Merge branch 'mastofe/system-font' into 'develop'
[akkoma] / priv / static / packs / features / compose.js.map
index f6fa11a2f4a92945b7ce348bf029e73f3c20a6bd..361eeb0ce339e2a61ff0698090b3c9060733827d 100644 (file)
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///features/compose.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/features/compose/components/compose_form.js","webpack:///./app/javascript/mastodon/features/compose/components/character_counter.js","webpack:///./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","webpack:///./app/javascript/mastodon/features/compose/components/reply_indicator.js","webpack:///./app/javascript/mastodon/components/autosuggest_textarea.js","webpack:///./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","webpack:///./app/javascript/mastodon/features/compose/components/autosuggest_account.js","webpack:///./app/javascript/mastodon/components/autosuggest_emoji.js","webpack:///./node_modules/react-textarea-autosize/es/index.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_button.js","webpack:///./app/javascript/mastodon/components/collapsable.js","webpack:///./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/text_icon_button.js","webpack:///./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_form_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_form.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_progress.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload.js","webpack:///./app/javascript/mastodon/features/compose/containers/warning_container.js","webpack:///./app/javascript/mastodon/features/compose/components/warning.js","webpack:///./app/javascript/mastodon/features/compose/util/counter.js","webpack:///./app/javascript/mastodon/features/compose/util/url_regex.js","webpack:///./app/javascript/mastodon/features/compose/containers/compose_form_container.js","webpack:///./app/javascript/mastodon/features/compose/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/features/compose/components/navigation_bar.js","webpack:///./app/javascript/mastodon/features/compose/components/search.js","webpack:///./app/javascript/mastodon/features/compose/containers/navigation_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_results_container.js","webpack:///./app/javascript/mastodon/features/compose/components/search_results.js"],"names":["webpackJsonp","286","module","__webpack_exports__","__webpack_require__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","__WEBPACK_IMPORTED_MODULE_14__actions_alerts__","messages","Object","deleteConfirm","id","defaultMessage","deleteMessage","blockConfirm","makeMapStateToProps","getStatus","state","props","status","mapDispatchToProps","dispatch","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","this","onFavourite","onPin","onEmbed","url","onError","error","onDelete","message","formatMessage","confirm","onConfirm","onDirect","account","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","302","d","ComposeForm","_class","_class2","_temp2","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5__character_counter__","__WEBPACK_IMPORTED_MODULE_6__components_button__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__","__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__","__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__","__WEBPACK_IMPORTED_MODULE_13__components_collapsable__","__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__","__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__","__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__","__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__","__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__","__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__","__WEBPACK_IMPORTED_MODULE_20__is_mobile__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_22_stringz__","__WEBPACK_IMPORTED_MODULE_23__util_counter__","__WEBPACK_IMPORTED_MODULE_24__initial_state__","allowedAroundShortCode","placeholder","spoiler_placeholder","publish","publishLoud","_ImmutablePureCompone","_temp","_this","_ret","_len","arguments","length","args","Array","_key","call","apply","concat","handleChange","onChange","target","value","handleKeyDown","keyCode","ctrlKey","metaKey","handleSubmit","text","autosuggestTextarea","textarea","_this$props","is_submitting","is_uploading","anyMedia","fulltext","spoiler_text","join","trim","onSubmit","onSuggestionsClearRequested","onClearSuggestions","onSuggestionsFetchRequested","token","onFetchSuggestions","onSuggestionSelected","tokenStart","handleChangeSpoilerText","onChangeSpoilerText","setAutosuggestTextarea","c","handleEmojiPick","data","position","selectionStart","needsSpace","custom","includes","onPickEmoji","prototype","componentDidUpdate","prevProps","focusDate","selectionEnd","preselectDate","search","caretPosition","setSelectionRange","focus","render","_props","onPaste","showSearch","disabled","disabledButton","publishText","privacy","className","isVisible","spoiler","fullHeight","style","display","onKeyDown","type","a","createElement","ref","suggestions","autoFocus","window","innerWidth","max","onClick","block","propTypes","object","isRequired","string","suggestion_token","list","bool","instanceOf","Date","number","func","defaultProps","303","CharacterCounter","__WEBPACK_IMPORTED_MODULE_5_stringz__","_React$PureComponent","checkRemainingText","diff","PureComponent","304","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__actions_compose__","__WEBPACK_IMPORTED_MODULE_2__selectors__","__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__","getIn","onCancel","305","ReplyIndicator","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__rtl__","cancel","handleClick","handleAccountClick","button","preventDefault","context","history","push","content","__html","direction","title","icon","inverted","href","size","dangerouslySetInnerHTML","contextTypes","map","306","AutosuggestTextarea","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__","__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__rtl__","__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__","__WEBPACK_IMPORTED_MODULE_13_classnames__","__WEBPACK_IMPORTED_MODULE_13_classnames___default","textAtCursorMatchesToken","str","word","left","slice","right","indexOf","toLowerCase","suggestionsHidden","selectedSuggestion","lastToken","_textAtCursorMatchesT","setState","_this$state","which","isComposing","key","document","querySelector","parentElement","Math","min","stopPropagation","defaultPrevented","onBlur","onSuggestionClick","suggestion","currentTarget","getAttribute","setTextarea","clipboardData","files","renderSuggestion","i","inner","emoji","role","tabIndex","data-index","selected","onMouseDown","componentWillReceiveProps","nextProps","onKeyUp","inputRef","aria-autocomplete","isEmpty","307","__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__","getAccount","308","AutosuggestAccount","__WEBPACK_IMPORTED_MODULE_5__components_avatar__","__WEBPACK_IMPORTED_MODULE_6__components_display_name__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","309","process","AutosuggestEmoji","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default","assetHost","env","CDN_HOST","imageUrl","mapping","native","replace","filename","src","alt","colons","310","_extends","assign","source","hasOwnProperty","_inheritsLoose","subClass","superClass","create","constructor","__proto__","_objectWithoutProperties","excluded","sourceKeys","keys","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","calculateNodeHeight","uiTextNode","uid","useCache","minRows","maxRows","hiddenTextarea","parentNode","body","appendChild","nodeStyling","calculateNodeStyling","paddingSize","borderSize","boxSizing","sizingStyle","forEach","HIDDEN_TEXTAREA_STYLE","setProperty","minHeight","Infinity","maxHeight","height","scrollHeight","singleRowHeight","rowCount","floor","node","computedStyleCache","getComputedStyle","SIZING_STYLE","reduce","obj","getPropertyValue","isIE","width","parseFloat","nodeInfo","__WEBPACK_IMPORTED_MODULE_0_react__","__WEBPACK_IMPORTED_MODULE_0_react___default","__WEBPACK_IMPORTED_MODULE_1_prop_types__","isBrowser","documentElement","currentStyle","min-height","max-height","visibility","overflow","z-index","top","purgeCache","seed","noop","requestAnimationFrame","cancelAnimationFrame","setTimeout","clearTimeout","onNextFrame","clearNextFrameAction","TextareaAutosize","_React$Component","_resizeLock","_onRootDOMNode","_rootDOMNode","_onChange","event","_controlled","_resizeComponent","callback","nodeHeight","_uid","useCacheForDOMMeasurements","_proto","onHeightChange","componentDidMount","_this2","_resizeListener","addEventListener","_this3","_clearNextFrame","_onNextFrameActionId","prevState","componentWillUnmount","removeEventListener","Component","311","__WEBPACK_IMPORTED_MODULE_1__components_upload_button__","__WEBPACK_IMPORTED_MODULE_2__actions_compose__","mapStateToProps","some","m","resetFileKey","onSelectFile","312","UploadButton","_dec","__WEBPACK_IMPORTED_MODULE_5__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default","upload","acceptContentTypes","iconStyle","lineHeight","fileElement","click","setRef","multiple","accept","toArray","listOf","313","__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default","Collapsable","children","defaultStyle","opacity","_ref2","314","__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","marked","unmarked","label","active","ariaControls","315","TextIconButton","aria-label","aria-expanded","aria-controls","316","__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__","__WEBPACK_IMPORTED_MODULE_3__actions_modal__","__WEBPACK_IMPORTED_MODULE_4__is_mobile__","isModalOpen","modalType","isUserTouching","onModalOpen","onModalClose","317","PrivacyDropdown","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default","__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_11_classnames__","__WEBPACK_IMPORTED_MODULE_11_classnames___default","public_short","public_long","unlisted_short","unlisted_long","private_short","private_long","direct_short","direct_long","change_privacy","listenerOptions","hasSupport","passive","PrivacyDropdownMenu","mounted","handleDocumentClick","contains","onClose","items","findIndex","item","element","childNodes","firstChild","lastChild","setFocusRef","focusedItem","scaleX","scaleY","damping","stiffness","transform","aria-selected","meta","_React$PureComponent2","_ret2","_len2","_key2","open","placement","handleToggle","actions","options","option","handleModalActionClick","_target$getBoundingCl","getBoundingClientRect","innerHeight","handleClose","componentWillMount","_props2","_state","valueOption","find","expanded","show","318","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_classnames__","__WEBPACK_IMPORTED_MODULE_6_classnames___default","__WEBPACK_IMPORTED_MODULE_7__components_icon_button__","__WEBPACK_IMPORTED_MODULE_8__actions_compose__","__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_11_react_intl__","visible","SensitiveButton","scale","compose-form__sensitive-button--visible","319","__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","__WEBPACK_IMPORTED_MODULE_3_reselect__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5__actions_emojis__","DEFAULTS","getFrequentlyUsedEmojis","emojiCounters","emojis","keySeq","sort","b","reverse","perLine","uniqueDefaults","filter","getCustomEmojis","aShort","bShort","custom_emojis","skinTone","frequentlyUsedEmojis","onSkinTone","320","EmojiPickerDropdown","_class3","_class4","_temp4","_class5","__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__","emoji_search","emoji_not_found","recent","search_results","people","nature","food","activity","travel","objects","symbols","flags","EmojiPicker","Emoji","backgroundImageFn","categoriesSort","ModifierPickerMenu","onSelect","attachListeners","removeListeners","set","sheetSize","skin","ModifierPicker","onOpen","handleSelect","modifier","EmojiPickerMenu","_React$PureComponent3","_temp3","_ret3","_len3","_key3","modifierOpen","getI18n","notfound","categories","foods","places","onPick","handleModifierOpen","handleModifierClose","handleModifierChange","loading","selecting","emojiSize","color","i18n","include","showPreview","emojiTooltip","_React$PureComponent4","_temp5","_this4","_ret4","_len4","_key4","dropdown","onShowDropdown","then","EmojiMart","Picker","catch","onHideDropdown","onToggle","setTargetRef","findTarget","_props3","pulse-loading","321","__WEBPACK_IMPORTED_MODULE_1__components_upload_form__","mediaIds","322","UploadForm","__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__","323","__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__","progress","324","UploadProgress","__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default","325","__WEBPACK_IMPORTED_MODULE_1__components_upload__","onUndo","onDescriptionChange","description","onOpenFocalPoint","326","Upload","__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default","hovered","focused","dirtyDescription","handleUndoClick","handleFocalPointClick","handleInputChange","handleMouseEnter","handleMouseLeave","handleInputFocus","handleInputBlur","focusX","focusY","x","y","onMouseEnter","onMouseLeave","backgroundImage","backgroundPosition","maxLength","onFocus","327","__WEBPACK_IMPORTED_MODULE_3__components_warning__","__WEBPACK_IMPORTED_MODULE_4_react_intl__","__WEBPACK_IMPORTED_MODULE_5__initial_state__","APPROX_HASHTAG_RE","needsLockWarning","hashtagWarning","test","directMessageWarning","WarningWrapper","locked","328","Warning","329","countableText","inputText","330","regexen","regexSupplant","regex","global","ignoreCase","multiline","RegExp","match","newRegex","stringSupplant","spaces_group","invalid_chars_group","punct","validUrlPrecedingChars","invalidDomainChars","validDomainChars","validSubdomain","validDomainName","validGTLD","validCCTLD","validPunycode","validSpecialCCTLD","validDomain","validPortNumber","pd","validGeneralUrlPathChars","validUrlBalancedParens","validUrlPathEndingChars","validUrlPath","validUrlQueryChars","validUrlQueryEndingChars","validUrl","331","__WEBPACK_IMPORTED_MODULE_1__components_compose_form__","accountId","checked","824","defineProperty","Compose","__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__","__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_router_dom__","__WEBPACK_IMPORTED_MODULE_11__containers_search_container__","__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__","start","home_timeline","notifications","public","community","preferences","logout","ownProps","columns","multiColumn","isSearchPage","header","to","column","data-method","879","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","onFollow","onMuteNotifications","880","Account","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","hidingNotificationsButton","906","NavigationBar","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9__components_permalink__","907","Search","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default","SearchPopout","extraInformation","handleClear","submitted","onClear","handleFocus","onShow","handleBlur","hasValue","992","__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__","__WEBPACK_IMPORTED_MODULE_2__initial_state__","993","__WEBPACK_IMPORTED_MODULE_1__actions_search__","__WEBPACK_IMPORTED_MODULE_2__components_search__","994","__WEBPACK_IMPORTED_MODULE_1__components_search_results__","results","995","SearchResults","__WEBPACK_IMPORTED_MODULE_6_react_intl__","__WEBPACK_IMPORTED_MODULE_7__containers_account_container__","__WEBPACK_IMPORTED_MODULE_8__containers_status_container__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default","accounts","statuses","hashtags","count","statusId","hashtag"],"mappings":"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","file":"features/compose.js","sourcesContent":["webpackJsonp([2],{\n\n/***/ 286:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(156);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(89);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(155);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_alerts__ = __webpack_require__(33);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n  deleteConfirm: {\n    'id': 'confirmations.delete.confirm',\n    'defaultMessage': 'Delete'\n  },\n  deleteMessage: {\n    'id': 'confirmations.delete.message',\n    'defaultMessage': 'Are you sure you want to delete this status?'\n  },\n  blockConfirm: {\n    'id': 'confirmations.block.confirm',\n    'defaultMessage': 'Block'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n  var mapStateToProps = function mapStateToProps(state, props) {\n    return {\n      status: getStatus(state, props.id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var intl = _ref.intl;\n  return {\n    onReply: function onReply(status, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n    },\n    onModalReblog: function onModalReblog(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"o\" /* reblog */])(status));\n    },\n    onReblog: function onReblog(status, e) {\n      if (status.get('reblogged')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"r\" /* unreblog */])(status));\n      } else {\n        if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n          this.onModalReblog(status);\n        } else {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n        }\n      }\n    },\n    onFavourite: function onFavourite(status) {\n      if (status.get('favourited')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"p\" /* unfavourite */])(status));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"k\" /* favourite */])(status));\n      }\n    },\n    onPin: function onPin(status) {\n      if (status.get('pinned')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"q\" /* unpin */])(status));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* pin */])(status));\n      }\n    },\n    onEmbed: function onEmbed(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('EMBED', {\n        url: status.get('url'),\n        onError: function onError(error) {\n          return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_alerts__[\"e\" /* showAlertForError */])(error));\n        }\n      }));\n    },\n    onDelete: function onDelete(status) {\n      if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"e\" /* deleteModal */]) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n          message: intl.formatMessage(messages.deleteMessage),\n          confirm: intl.formatMessage(messages.deleteConfirm),\n          onConfirm: function onConfirm() {\n            return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"f\" /* deleteStatus */])(status.get('id')));\n          }\n        }));\n      }\n    },\n    onDirect: function onDirect(account, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"N\" /* directCompose */])(account, router));\n    },\n    onMention: function onMention(account, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n    },\n    onOpenMedia: function onOpenMedia(media, index) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n    },\n    onOpenVideo: function onOpenVideo(media, time) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n    },\n    onBlock: function onBlock(account) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n        message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n          id: 'confirmations.block.message',\n          defaultMessage: 'Are you sure you want to block {name}?',\n          values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n        }),\n        confirm: intl.formatMessage(messages.blockConfirm),\n        onConfirm: function onConfirm() {\n          return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n        }\n      }));\n    },\n    onReport: function onReport(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n    },\n    onMute: function onMute(account) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"g\" /* initMuteModal */])(account));\n    },\n    onMuteConversation: function onMuteConversation(status) {\n      if (status.get('muted')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* unmuteStatus */])(status.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* muteStatus */])(status.get('id')));\n      }\n    },\n    onToggleHidden: function onToggleHidden(status) {\n      if (status.get('hidden')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* revealStatus */])(status.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"h\" /* hideStatus */])(status.get('id')));\n      }\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 302:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ComposeForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__character_counter__ = __webpack_require__(303);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_button__ = __webpack_require__(100);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__ = __webpack_require__(304);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__ = __webpack_require__(306);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__ = __webpack_require__(311);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_collapsable__ = __webpack_require__(313);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__ = __webpack_require__(314);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__ = __webpack_require__(316);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__ = __webpack_require__(318);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__ = __webpack_require__(319);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__ = __webpack_require__(321);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__containers_warning_container__ = __webpack_require__(327);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__is_mobile__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz__ = __webpack_require__(99);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_22_stringz__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__util_counter__ = __webpack_require__(329);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar allowedAroundShortCode = '><\\x85 \\xA0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\t\\n\\x0B\\f\\r';\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n  placeholder: {\n    'id': 'compose_form.placeholder',\n    'defaultMessage': 'What is on your mind?'\n  },\n  spoiler_placeholder: {\n    'id': 'compose_form.spoiler_placeholder',\n    'defaultMessage': 'Write your warning here'\n  },\n  publish: {\n    'id': 'compose_form.publish',\n    'defaultMessage': 'Toot'\n  },\n  publishLoud: {\n    'id': 'compose_form.publish_loud',\n    'defaultMessage': '{publish}!'\n  }\n});\n\nvar ComposeForm = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ComposeForm, _ImmutablePureCompone);\n\n  function ComposeForm() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ComposeForm);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n      _this.props.onChange(e.target.value);\n    }, _this.handleKeyDown = function (e) {\n      if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n        _this.handleSubmit();\n      }\n    }, _this.handleSubmit = function () {\n      if (_this.props.text !== _this.autosuggestTextarea.textarea.value) {\n        // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n        // Update the state to match the current text\n        _this.props.onChange(_this.autosuggestTextarea.textarea.value);\n      }\n\n      // Submit disabled:\n      var _this$props = _this.props,\n          is_submitting = _this$props.is_submitting,\n          is_uploading = _this$props.is_uploading,\n          anyMedia = _this$props.anyMedia;\n\n      var fulltext = [_this.props.spoiler_text, Object(__WEBPACK_IMPORTED_MODULE_23__util_counter__[\"a\" /* countableText */])(_this.props.text)].join('');\n\n      if (is_submitting || is_uploading || Object(__WEBPACK_IMPORTED_MODULE_22_stringz__[\"length\"])(fulltext) > __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */] || fulltext.length !== 0 && fulltext.trim().length === 0 && !anyMedia) {\n        return;\n      }\n\n      _this.props.onSubmit();\n    }, _this.onSuggestionsClearRequested = function () {\n      _this.props.onClearSuggestions();\n    }, _this.onSuggestionsFetchRequested = function (token) {\n      _this.props.onFetchSuggestions(token);\n    }, _this.onSuggestionSelected = function (tokenStart, token, value) {\n      _this.props.onSuggestionSelected(tokenStart, token, value);\n    }, _this.handleChangeSpoilerText = function (e) {\n      _this.props.onChangeSpoilerText(e.target.value);\n    }, _this.setAutosuggestTextarea = function (c) {\n      _this.autosuggestTextarea = c;\n    }, _this.handleEmojiPick = function (data) {\n      var text = _this.props.text;\n\n      var position = _this.autosuggestTextarea.textarea.selectionStart;\n      var needsSpace = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]);\n\n      _this.props.onPickEmoji(position, data, needsSpace);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ComposeForm.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n    // This statement does several things:\n    // - If we're beginning a reply, and,\n    //     - Replying to zero or one users, places the cursor at the end of the textbox.\n    //     - Replying to more than one user, selects any usernames past the first;\n    //       this provides a convenient shortcut to drop everyone else from the conversation.\n    if (this.props.focusDate !== prevProps.focusDate) {\n      var selectionEnd = void 0,\n          selectionStart = void 0;\n\n      if (this.props.preselectDate !== prevProps.preselectDate) {\n        selectionEnd = this.props.text.length;\n        selectionStart = this.props.text.search(/\\s/) + 1;\n      } else if (typeof this.props.caretPosition === 'number') {\n        selectionStart = this.props.caretPosition;\n        selectionEnd = this.props.caretPosition;\n      } else {\n        selectionEnd = this.props.text.length;\n        selectionStart = selectionEnd;\n      }\n\n      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n      this.autosuggestTextarea.textarea.focus();\n    } else if (prevProps.is_submitting && !this.props.is_submitting) {\n      this.autosuggestTextarea.textarea.focus();\n    }\n  };\n\n  ComposeForm.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        onPaste = _props.onPaste,\n        showSearch = _props.showSearch,\n        anyMedia = _props.anyMedia;\n\n    var disabled = this.props.is_submitting;\n    var text = [this.props.spoiler_text, Object(__WEBPACK_IMPORTED_MODULE_23__util_counter__[\"a\" /* countableText */])(this.props.text)].join('');\n    var disabledButton = disabled || this.props.is_uploading || Object(__WEBPACK_IMPORTED_MODULE_22_stringz__[\"length\"])(text) > __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */] || text.length !== 0 && text.trim().length === 0 && !anyMedia;\n    var publishText = '';\n\n    if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n      publishText = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        className: 'compose-form__publish-private'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-lock'\n      }), ' ', intl.formatMessage(messages.publish));\n    } else {\n      publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_19__containers_warning_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__components_collapsable__[\"a\" /* default */], {\n      isVisible: this.props.spoiler,\n      fullHeight: 50\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'spoiler-input'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.spoiler_placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n      placeholder: intl.formatMessage(messages.spoiler_placeholder),\n      value: this.props.spoiler_text,\n      onChange: this.handleChangeSpoilerText,\n      onKeyDown: this.handleKeyDown,\n      type: 'text',\n      className: 'spoiler-input__input',\n      id: 'cw-spoiler-input'\n    })))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__autosuggest-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__[\"a\" /* default */], {\n      ref: this.setAutosuggestTextarea,\n      placeholder: intl.formatMessage(messages.placeholder),\n      disabled: disabled,\n      value: this.props.text,\n      onChange: this.handleChange,\n      suggestions: this.props.suggestions,\n      onKeyDown: this.handleKeyDown,\n      onSuggestionsFetchRequested: this.onSuggestionsFetchRequested,\n      onSuggestionsClearRequested: this.onSuggestionsClearRequested,\n      onSuggestionSelected: this.onSuggestionSelected,\n      onPaste: onPaste,\n      autoFocus: !showSearch && !Object(__WEBPACK_IMPORTED_MODULE_20__is_mobile__[\"b\" /* isMobile */])(window.innerWidth)\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__containers_emoji_picker_dropdown_container__[\"a\" /* default */], {\n      onPickEmoji: this.handleEmojiPick\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__modifiers'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__containers_upload_form_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__buttons-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__buttons'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__containers_privacy_dropdown_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__containers_sensitive_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_spoiler_button_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'character-counter__wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__character_counter__[\"a\" /* default */], {\n      max: __WEBPACK_IMPORTED_MODULE_24__initial_state__[\"c\" /* charLimit */],\n      text: text\n    }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__publish'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__publish-button-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_button__[\"a\" /* default */], {\n      text: publishText,\n      onClick: this.handleSubmit,\n      disabled: disabledButton,\n      block: true\n    }))));\n  };\n\n  return ComposeForm;\n}(__WEBPACK_IMPORTED_MODULE_21_react_immutable_pure_component___default.a), _class2.propTypes = {\n  intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n  text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string.isRequired,\n  suggestion_token: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  suggestions: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n  spoiler: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  privacy: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  spoiler_text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  focusDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n  caretPosition: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number,\n  preselectDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n  is_submitting: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  is_uploading: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onSubmit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onClearSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onFetchSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onChangeSpoilerText: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onPaste: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onPickEmoji: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  showSearch: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  anyMedia: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _class2.defaultProps = {\n  showSearch: false\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 303:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return CharacterCounter; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz__ = __webpack_require__(99);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_stringz__);\n\n\n\n\n\n\n\n\nvar CharacterCounter = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CharacterCounter, _React$PureComponent);\n\n  function CharacterCounter() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CharacterCounter);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  CharacterCounter.prototype.checkRemainingText = function checkRemainingText(diff) {\n    if (diff < 0) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        className: 'character-counter character-counter--over'\n      }, void 0, diff);\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      className: 'character-counter'\n    }, void 0, diff);\n  };\n\n  CharacterCounter.prototype.render = function render() {\n    var diff = this.props.max - Object(__WEBPACK_IMPORTED_MODULE_5_stringz__[\"length\"])(this.props.text);\n    return this.checkRemainingText(diff);\n  };\n\n  return CharacterCounter;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 304:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__ = __webpack_require__(305);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getStatus = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"e\" /* makeGetStatus */])();\n\n  var mapStateToProps = function mapStateToProps(state) {\n    return {\n      status: getStatus(state, state.getIn(['compose', 'in_reply_to']))\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onCancel: function onCancel() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_compose__[\"E\" /* cancelReplyCompose */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 305:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ReplyIndicator; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__rtl__ = __webpack_require__(98);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  cancel: {\n    'id': 'reply_indicator.cancel',\n    'defaultMessage': 'Cancel'\n  }\n});\n\nvar ReplyIndicator = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ReplyIndicator, _ImmutablePureCompone);\n\n  function ReplyIndicator() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ReplyIndicator);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n      _this.props.onCancel();\n    }, _this.handleAccountClick = function (e) {\n      if (e.button === 0) {\n        e.preventDefault();\n        _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n      }\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ReplyIndicator.prototype.render = function render() {\n    var _props = this.props,\n        status = _props.status,\n        intl = _props.intl;\n\n\n    if (!status) {\n      return null;\n    }\n\n    var content = { __html: status.get('contentHtml') };\n    var style = {\n      direction: Object(__WEBPACK_IMPORTED_MODULE_12__rtl__[\"a\" /* isRtl */])(status.get('search_index')) ? 'rtl' : 'ltr'\n    };\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__header'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__cancel'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n      title: intl.formatMessage(messages.cancel),\n      icon: 'times',\n      onClick: this.handleClick,\n      inverted: true\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n      href: status.getIn(['account', 'url']),\n      onClick: this.handleAccountClick,\n      className: 'reply-indicator__display-name'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__display-avatar'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n      account: status.get('account'),\n      size: 24\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n      account: status.get('account')\n    }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__content',\n      style: style,\n      dangerouslySetInnerHTML: content\n    }));\n  };\n\n  return ReplyIndicator;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.contextTypes = {\n  router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n  status: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n  onCancel: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 306:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestTextarea; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__ = __webpack_require__(307);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__ = __webpack_require__(309);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__rtl__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__ = __webpack_require__(310);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_classnames__);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar textAtCursorMatchesToken = function textAtCursorMatchesToken(str, caretPosition) {\n  var word = void 0;\n\n  var left = str.slice(0, caretPosition).search(/\\S+$/);\n  var right = str.slice(caretPosition).search(/\\s/);\n\n  if (right < 0) {\n    word = str.slice(left);\n  } else {\n    word = str.slice(left, right + caretPosition);\n  }\n\n  if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n    return [null, null];\n  }\n\n  word = word.trim().toLowerCase();\n\n  if (word.length > 0) {\n    return [left + 1, word];\n  } else {\n    return [null, null];\n  }\n};\n\nvar AutosuggestTextarea = (_temp2 = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(AutosuggestTextarea, _ImmutablePureCompone);\n\n  function AutosuggestTextarea() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestTextarea);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n      suggestionsHidden: false,\n      selectedSuggestion: 0,\n      lastToken: null,\n      tokenStart: 0\n    }, _this.onChange = function (e) {\n      var _textAtCursorMatchesT = textAtCursorMatchesToken(e.target.value, e.target.selectionStart),\n          tokenStart = _textAtCursorMatchesT[0],\n          token = _textAtCursorMatchesT[1];\n\n      if (token !== null && _this.state.lastToken !== token) {\n        _this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart: tokenStart });\n        _this.props.onSuggestionsFetchRequested(token);\n      } else if (token === null) {\n        _this.setState({ lastToken: null });\n        _this.props.onSuggestionsClearRequested();\n      }\n\n      _this.props.onChange(e);\n    }, _this.onKeyDown = function (e) {\n      var _this$props = _this.props,\n          suggestions = _this$props.suggestions,\n          disabled = _this$props.disabled;\n      var _this$state = _this.state,\n          selectedSuggestion = _this$state.selectedSuggestion,\n          suggestionsHidden = _this$state.suggestionsHidden;\n\n\n      if (disabled) {\n        e.preventDefault();\n        return;\n      }\n\n      if (e.which === 229 || e.isComposing) {\n        // Ignore key events during text composition\n        // e.key may be a name of the physical key even in this case (e.x. Safari / Chrome on Mac)\n        return;\n      }\n\n      switch (e.key) {\n        case 'Escape':\n          if (suggestions.size === 0 || suggestionsHidden) {\n            document.querySelector('.ui').parentElement.focus();\n          } else {\n            e.preventDefault();\n            _this.setState({ suggestionsHidden: true });\n          }\n\n          break;\n        case 'ArrowDown':\n          if (suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            _this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n          }\n\n          break;\n        case 'ArrowUp':\n          if (suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            _this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n          }\n\n          break;\n        case 'Enter':\n        case 'Tab':\n          // Select suggestion\n          if (_this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            e.stopPropagation();\n            _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestions.get(selectedSuggestion));\n          }\n\n          break;\n      }\n\n      if (e.defaultPrevented || !_this.props.onKeyDown) {\n        return;\n      }\n\n      _this.props.onKeyDown(e);\n    }, _this.onBlur = function () {\n      _this.setState({ suggestionsHidden: true });\n    }, _this.onSuggestionClick = function (e) {\n      var suggestion = _this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n      e.preventDefault();\n      _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestion);\n      _this.textarea.focus();\n    }, _this.setTextarea = function (c) {\n      _this.textarea = c;\n    }, _this.onPaste = function (e) {\n      if (e.clipboardData && e.clipboardData.files.length === 1) {\n        _this.props.onPaste(e.clipboardData.files);\n        e.preventDefault();\n      }\n    }, _this.renderSuggestion = function (suggestion, i) {\n      var selectedSuggestion = _this.state.selectedSuggestion;\n\n      var inner = void 0,\n          key = void 0;\n\n      if ((typeof suggestion === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(suggestion)) === 'object') {\n        inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__[\"a\" /* default */], {\n          emoji: suggestion\n        });\n        key = suggestion.id;\n      } else if (suggestion[0] === '#') {\n        inner = suggestion;\n        key = suggestion;\n      } else {\n        inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__[\"a\" /* default */], {\n          id: suggestion\n        });\n        key = suggestion;\n      }\n\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        role: 'button',\n        tabIndex: '0',\n        'data-index': i,\n        className: __WEBPACK_IMPORTED_MODULE_13_classnames___default()('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion }),\n        onMouseDown: _this.onSuggestionClick\n      }, key, inner);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  AutosuggestTextarea.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n    if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n      this.setState({ suggestionsHidden: false });\n    }\n  };\n\n  AutosuggestTextarea.prototype.render = function render() {\n    var _props = this.props,\n        value = _props.value,\n        suggestions = _props.suggestions,\n        disabled = _props.disabled,\n        placeholder = _props.placeholder,\n        onKeyUp = _props.onKeyUp,\n        autoFocus = _props.autoFocus;\n    var suggestionsHidden = this.state.suggestionsHidden;\n\n    var style = { direction: 'ltr' };\n\n    if (Object(__WEBPACK_IMPORTED_MODULE_10__rtl__[\"a\" /* isRtl */])(value)) {\n      style.direction = 'rtl';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-textarea'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, placeholder), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__[\"a\" /* default */], {\n      inputRef: this.setTextarea,\n      className: 'autosuggest-textarea__textarea',\n      disabled: disabled,\n      placeholder: placeholder,\n      autoFocus: autoFocus,\n      value: value,\n      onChange: this.onChange,\n      onKeyDown: this.onKeyDown,\n      onKeyUp: onKeyUp,\n      onBlur: this.onBlur,\n      onPaste: this.onPaste,\n      style: style,\n      'aria-autocomplete': 'list'\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-textarea__suggestions ' + (suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible')\n    }, void 0, suggestions.map(this.renderSuggestion)));\n  };\n\n  return AutosuggestTextarea;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n  value: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n  suggestions: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n  disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n  placeholder: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n  onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onSuggestionsClearRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onSuggestionsFetchRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onChange: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onKeyUp: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n  onKeyDown: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n  onPaste: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  autoFocus: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool\n}, _class.defaultProps = {\n  autoFocus: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 307:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__ = __webpack_require__(308);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(68);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getAccount = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"c\" /* makeGetAccount */])();\n\n  var mapStateToProps = function mapStateToProps(state, _ref) {\n    var id = _ref.id;\n    return {\n      account: getAccount(state, id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 308:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestAccount; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar AutosuggestAccount = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestAccount, _ImmutablePureCompone);\n\n  function AutosuggestAccount() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestAccount);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  AutosuggestAccount.prototype.render = function render() {\n    var account = this.props.account;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-account'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-account-icon'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_avatar__[\"a\" /* default */], {\n      account: account,\n      size: 18\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_display_name__[\"a\" /* default */], {\n      account: account\n    }));\n  };\n\n  return AutosuggestAccount;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 309:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestEmoji; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__ = __webpack_require__(159);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__);\n\n\n\n\n\n\n\n\nvar assetHost = process.env.CDN_HOST || '';\n\nvar AutosuggestEmoji = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestEmoji, _React$PureComponent);\n\n  function AutosuggestEmoji() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestEmoji);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  AutosuggestEmoji.prototype.render = function render() {\n    var emoji = this.props.emoji;\n\n    var url = void 0;\n\n    if (emoji.custom) {\n      url = emoji.imageUrl;\n    } else {\n      var mapping = __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native] || __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native.replace(/\\uFE0F$/, '')];\n\n      if (!mapping) {\n        return null;\n      }\n\n      url = assetHost + '/emoji/' + mapping.filename + '.svg';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-emoji'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n      className: 'emojione',\n      src: url,\n      alt: emoji.native || emoji.colons\n    }), emoji.colons);\n  };\n\n  return AutosuggestEmoji;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(35)))\n\n/***/ }),\n\n/***/ 310:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);\n\n\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n  subClass.prototype = Object.create(superClass.prototype);\n  subClass.prototype.constructor = subClass;\n  subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n\n  return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n  'min-height': '0',\n  'max-height': 'none',\n  height: '0',\n  visibility: 'hidden',\n  overflow: 'hidden',\n  position: 'absolute',\n  'z-index': '-1000',\n  top: '0',\n  right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (minRows === void 0) {\n    minRows = null;\n  }\n\n  if (maxRows === void 0) {\n    maxRows = null;\n  }\n\n  if (hiddenTextarea.parentNode === null) {\n    document.body.appendChild(hiddenTextarea);\n  } // Copy all CSS properties that have an impact on the height of the content in\n  // the textbox\n\n\n  var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n  if (nodeStyling === null) {\n    return null;\n  }\n\n  var paddingSize = nodeStyling.paddingSize,\n      borderSize = nodeStyling.borderSize,\n      boxSizing = nodeStyling.boxSizing,\n      sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n  // text-lines will not calculated properly as the shadow will technically be\n  // narrower for content\n\n  Object.keys(sizingStyle).forEach(function (key) {\n    hiddenTextarea.style[key] = sizingStyle[key];\n  });\n  Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n    hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n  });\n  hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n  var minHeight = -Infinity;\n  var maxHeight = Infinity;\n  var height = hiddenTextarea.scrollHeight;\n\n  if (boxSizing === 'border-box') {\n    // border-box: add border, since height = content + padding + border\n    height = height + borderSize;\n  } else if (boxSizing === 'content-box') {\n    // remove padding, since height = content\n    height = height - paddingSize;\n  } // measure height of a textarea with a single row\n\n\n  hiddenTextarea.value = 'x';\n  var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n  if (minRows !== null || maxRows !== null) {\n    if (minRows !== null) {\n      minHeight = singleRowHeight * minRows;\n\n      if (boxSizing === 'border-box') {\n        minHeight = minHeight + paddingSize + borderSize;\n      }\n\n      height = Math.max(minHeight, height);\n    }\n\n    if (maxRows !== null) {\n      maxHeight = singleRowHeight * maxRows;\n\n      if (boxSizing === 'border-box') {\n        maxHeight = maxHeight + paddingSize + borderSize;\n      }\n\n      height = Math.min(maxHeight, height);\n    }\n  }\n\n  var rowCount = Math.floor(height / singleRowHeight);\n  return {\n    height: height,\n    minHeight: minHeight,\n    maxHeight: maxHeight,\n    rowCount: rowCount\n  };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (useCache && computedStyleCache[uid]) {\n    return computedStyleCache[uid];\n  }\n\n  var style = window.getComputedStyle(node);\n\n  if (style === null) {\n    return null;\n  }\n\n  var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n    obj[name] = style.getPropertyValue(name);\n    return obj;\n  }, {});\n  var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n  // so we need to add manually padding and border widths\n\n  if (isIE && boxSizing === 'border-box') {\n    sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n  }\n\n  var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n  var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n  var nodeInfo = {\n    sizingStyle: sizingStyle,\n    paddingSize: paddingSize,\n    borderSize: borderSize,\n    boxSizing: boxSizing\n  };\n\n  if (useCache) {\n    computedStyleCache[uid] = nodeInfo;\n  }\n\n  return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n  return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n  if (seed === void 0) {\n    seed = 0;\n  }\n\n  return function () {\n    return ++seed;\n  };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ?  true ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n  _inheritsLoose(TextareaAutosize, _React$Component);\n\n  function TextareaAutosize(props) {\n    var _this;\n\n    _this = _React$Component.call(this, props) || this;\n    _this._resizeLock = false;\n\n    _this._onRootDOMNode = function (node) {\n      _this._rootDOMNode = node;\n\n      if (_this.props.inputRef) {\n        _this.props.inputRef(node);\n      }\n    };\n\n    _this._onChange = function (event) {\n      if (!_this._controlled) {\n        _this._resizeComponent();\n      }\n\n      _this.props.onChange(event);\n    };\n\n    _this._resizeComponent = function (callback) {\n      if (callback === void 0) {\n        callback = noop;\n      }\n\n      if (typeof _this._rootDOMNode === 'undefined') {\n        callback();\n        return;\n      }\n\n      var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n      if (nodeHeight === null) {\n        callback();\n        return;\n      }\n\n      var height = nodeHeight.height,\n          minHeight = nodeHeight.minHeight,\n          maxHeight = nodeHeight.maxHeight,\n          rowCount = nodeHeight.rowCount;\n      _this.rowCount = rowCount;\n\n      if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n        _this.setState({\n          height: height,\n          minHeight: minHeight,\n          maxHeight: maxHeight\n        }, callback);\n\n        return;\n      }\n\n      callback();\n    };\n\n    _this.state = {\n      height: props.style && props.style.height || 0,\n      minHeight: -Infinity,\n      maxHeight: Infinity\n    };\n    _this._uid = uid();\n    _this._controlled = typeof props.value === 'string';\n    return _this;\n  }\n\n  var _proto = TextareaAutosize.prototype;\n\n  _proto.render = function render() {\n    var _props = this.props,\n        _minRows = _props.minRows,\n        _maxRows = _props.maxRows,\n        _onHeightChange = _props.onHeightChange,\n        _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n        _inputRef = _props.inputRef,\n        props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n    props.style = _extends({}, props.style, {\n      height: this.state.height\n    });\n    var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n    if (maxHeight < this.state.height) {\n      props.style.overflow = 'hidden';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(\"textarea\", _extends({}, props, {\n      onChange: this._onChange,\n      ref: this._onRootDOMNode\n    }));\n  };\n\n  _proto.componentDidMount = function componentDidMount() {\n    var _this2 = this;\n\n    this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n    // causing competing rerenders (due to setState in the listener) in React.\n    // More can be found here - facebook/react#6324\n\n\n    this._resizeListener = function () {\n      if (_this2._resizeLock) {\n        return;\n      }\n\n      _this2._resizeLock = true;\n\n      _this2._resizeComponent(function () {\n        return _this2._resizeLock = false;\n      });\n    };\n\n    window.addEventListener('resize', this._resizeListener);\n  };\n\n  _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n    var _this3 = this;\n\n    this._clearNextFrame();\n\n    this._onNextFrameActionId = onNextFrame(function () {\n      return _this3._resizeComponent();\n    });\n  };\n\n  _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n    if (this.state.height !== prevState.height) {\n      this.props.onHeightChange(this.state.height, this);\n    }\n  };\n\n  _proto.componentWillUnmount = function componentWillUnmount() {\n    this._clearNextFrame();\n\n    window.removeEventListener('resize', this._resizeListener);\n    purgeCache(this._uid);\n  };\n\n  _proto._clearNextFrame = function _clearNextFrame() {\n    clearNextFrameAction(this._onNextFrameActionId);\n  };\n\n  return TextareaAutosize;\n}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component);\n\nTextareaAutosize.defaultProps = {\n  onChange: noop,\n  onHeightChange: noop,\n  useCacheForDOMMeasurements: false\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (TextareaAutosize);\n\n/***/ }),\n\n/***/ 311:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_button__ = __webpack_require__(312);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    disabled: state.getIn(['compose', 'is_uploading']) || state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(function (m) {\n      return m.get('type') === 'video';\n    }),\n    resetFileKey: state.getIn(['compose', 'resetFileKey'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onSelectFile: function onSelectFile(files) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_button__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 312:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n  upload: {\n    'id': 'upload_button.label',\n    'defaultMessage': 'Add media'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var mapStateToProps = function mapStateToProps(state) {\n    return {\n      acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types'])\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar iconStyle = {\n  height: null,\n  lineHeight: '27px'\n};\n\nvar UploadButton = (_dec = Object(__WEBPACK_IMPORTED_MODULE_8_react_redux__[\"connect\"])(makeMapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadButton, _ImmutablePureCompone);\n\n  function UploadButton() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadButton);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n      if (e.target.files.length > 0) {\n        _this.props.onSelectFile(e.target.files);\n      }\n    }, _this.handleClick = function () {\n      _this.fileElement.click();\n    }, _this.setRef = function (c) {\n      _this.fileElement = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  UploadButton.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        resetFileKey = _props.resetFileKey,\n        disabled = _props.disabled,\n        acceptContentTypes = _props.acceptContentTypes;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload-button'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_icon_button__[\"a\" /* default */], {\n      icon: 'camera',\n      title: intl.formatMessage(messages.upload),\n      disabled: disabled,\n      onClick: this.handleClick,\n      className: 'compose-form__upload-button-icon',\n      size: 18,\n      inverted: true,\n      style: iconStyle\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.upload)), __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('input', {\n      key: resetFileKey,\n      ref: this.setRef,\n      type: 'file',\n      multiple: false,\n      accept: acceptContentTypes.toArray().join(','),\n      onChange: this.handleChange,\n      disabled: disabled,\n      style: { display: 'none' }\n    })));\n  };\n\n  return UploadButton;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n  disabled: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool,\n  onSelectFile: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  style: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object,\n  resetFileKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number,\n  acceptContentTypes: __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default.a.listOf(__WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string).isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 313:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring__);\n\n\n\n\n\n\nvar Collapsable = function Collapsable(_ref) {\n  var fullHeight = _ref.fullHeight,\n      isVisible = _ref.isVisible,\n      children = _ref.children;\n  return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2__features_ui_util_optional_motion__[\"a\" /* default */], {\n    defaultStyle: { opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 },\n    style: { opacity: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : 100), height: __WEBPACK_IMPORTED_MODULE_3_react_motion_lib_spring___default()(!isVisible ? 0 : fullHeight) }\n  }, void 0, function (_ref2) {\n    var opacity = _ref2.opacity,\n        height = _ref2.height;\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      style: { height: height + 'px', overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }\n    }, void 0, children);\n  });\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Collapsable);\n\n/***/ }),\n\n/***/ 314:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__ = __webpack_require__(315);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(7);\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n  marked: {\n    'id': 'compose_form.spoiler.marked',\n    'defaultMessage': 'Text is hidden behind warning'\n  },\n  unmarked: {\n    'id': 'compose_form.spoiler.unmarked',\n    'defaultMessage': 'Text is not hidden'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n  var intl = _ref.intl;\n  return {\n    label: 'CW',\n    title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n    active: state.getIn(['compose', 'spoiler']),\n    ariaControls: 'cw-spoiler-input'\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onClick: function onClick() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"I\" /* changeComposeSpoilerness */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 315:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return TextIconButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar TextIconButton = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(TextIconButton, _React$PureComponent);\n\n  function TextIconButton() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TextIconButton);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n      e.preventDefault();\n      _this.props.onClick();\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  TextIconButton.prototype.render = function render() {\n    var _props = this.props,\n        label = _props.label,\n        title = _props.title,\n        active = _props.active,\n        ariaControls = _props.ariaControls;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n      title: title,\n      'aria-label': title,\n      className: 'text-icon-button ' + (active ? 'active' : ''),\n      'aria-expanded': active,\n      onClick: this.handleClick,\n      'aria-controls': ariaControls\n    }, void 0, label);\n  };\n\n  return TextIconButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 316:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__ = __webpack_require__(317);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__is_mobile__ = __webpack_require__(43);\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    isModalOpen: state.get('modal').modalType === 'ACTIONS',\n    value: state.getIn(['compose', 'privacy'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(value) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"J\" /* changeComposeVisibility */])(value));\n    },\n\n\n    isUserTouching: __WEBPACK_IMPORTED_MODULE_4__is_mobile__[\"c\" /* isUserTouching */],\n    onModalOpen: function onModalOpen(props) {\n      return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('ACTIONS', props));\n    },\n    onModalClose: function onModalClose() {\n      return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"c\" /* closeModal */])());\n    }\n\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 317:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return PrivacyDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  public_short: {\n    'id': 'privacy.public.short',\n    'defaultMessage': 'Public'\n  },\n  public_long: {\n    'id': 'privacy.public.long',\n    'defaultMessage': 'Post to public timelines'\n  },\n  unlisted_short: {\n    'id': 'privacy.unlisted.short',\n    'defaultMessage': 'Unlisted'\n  },\n  unlisted_long: {\n    'id': 'privacy.unlisted.long',\n    'defaultMessage': 'Do not show in public timelines'\n  },\n  private_short: {\n    'id': 'privacy.private.short',\n    'defaultMessage': 'Followers-only'\n  },\n  private_long: {\n    'id': 'privacy.private.long',\n    'defaultMessage': 'Post to followers only'\n  },\n  direct_short: {\n    'id': 'privacy.direct.short',\n    'defaultMessage': 'Direct'\n  },\n  direct_long: {\n    'id': 'privacy.direct.long',\n    'defaultMessage': 'Post to mentioned users only'\n  },\n  change_privacy: {\n    'id': 'privacy.change',\n    'defaultMessage': 'Adjust status privacy'\n  }\n});\n\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar PrivacyDropdownMenu = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdownMenu, _React$PureComponent);\n\n  function PrivacyDropdownMenu() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdownMenu);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.state = {\n      mounted: false\n    }, _this.handleDocumentClick = function (e) {\n      if (_this.node && !_this.node.contains(e.target)) {\n        _this.props.onClose();\n      }\n    }, _this.handleKeyDown = function (e) {\n      var items = _this.props.items;\n\n      var value = e.currentTarget.getAttribute('data-index');\n      var index = items.findIndex(function (item) {\n        return item.value === value;\n      });\n      var element = void 0;\n\n      switch (e.key) {\n        case 'Escape':\n          _this.props.onClose();\n          break;\n        case 'Enter':\n          _this.handleClick(e);\n          break;\n        case 'ArrowDown':\n          element = _this.node.childNodes[index + 1];\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'ArrowUp':\n          element = _this.node.childNodes[index - 1];\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'Home':\n          element = _this.node.firstChild;\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'End':\n          element = _this.node.lastChild;\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n      }\n    }, _this.handleClick = function (e) {\n      var value = e.currentTarget.getAttribute('data-index');\n\n      e.preventDefault();\n\n      _this.props.onClose();\n      _this.props.onChange(value);\n    }, _this.setRef = function (c) {\n      _this.node = c;\n    }, _this.setFocusRef = function (c) {\n      _this.focusedItem = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  PrivacyDropdownMenu.prototype.componentDidMount = function componentDidMount() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n    if (this.focusedItem) this.focusedItem.focus();\n    this.setState({ mounted: true });\n  };\n\n  PrivacyDropdownMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  PrivacyDropdownMenu.prototype.render = function render() {\n    var _this2 = this;\n\n    var mounted = this.state.mounted;\n    var _props = this.props,\n        style = _props.style,\n        items = _props.items,\n        value = _props.value;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return (\n        // It should not be transformed when mounting because the resulting\n        // size will be used to determine the coordinate of the menu by\n        // react-overlays\n        __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n          'div',\n          { className: 'privacy-dropdown__dropdown', style: Object.assign({}, style, { opacity: opacity, transform: mounted ? 'scale(' + scaleX + ', ' + scaleY + ')' : null }), role: 'listbox', ref: _this2.setRef },\n          items.map(function (item) {\n            return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n              'div',\n              { role: 'option', tabIndex: '0', key: item.value, 'data-index': item.value, onKeyDown: _this2.handleKeyDown, onClick: _this2.handleClick, className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__option', { active: item.value === value }), 'aria-selected': item.value === value, ref: item.value === value ? _this2.setFocusRef : null },\n              __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n                className: 'privacy-dropdown__option__icon'\n              }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n                className: 'fa fa-fw fa-' + item.icon\n              })),\n              __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n                className: 'privacy-dropdown__option__content'\n              }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, item.text), item.meta)\n            );\n          })\n        )\n      );\n    });\n  };\n\n  return PrivacyDropdownMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar PrivacyDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class2 = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdown, _React$PureComponent2);\n\n  function PrivacyDropdown() {\n    var _temp2, _this3, _ret2;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdown);\n\n    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    return _ret2 = (_temp2 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this3), _this3.state = {\n      open: false,\n      placement: null\n    }, _this3.handleToggle = function (_ref2) {\n      var target = _ref2.target;\n\n      if (_this3.props.isUserTouching()) {\n        if (_this3.state.open) {\n          _this3.props.onModalClose();\n        } else {\n          _this3.props.onModalOpen({\n            actions: _this3.options.map(function (option) {\n              return Object.assign({}, option, { active: option.value === _this3.props.value });\n            }),\n            onClick: _this3.handleModalActionClick\n          });\n        }\n      } else {\n        var _target$getBoundingCl = target.getBoundingClientRect(),\n            top = _target$getBoundingCl.top;\n\n        _this3.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n        _this3.setState({ open: !_this3.state.open });\n      }\n    }, _this3.handleModalActionClick = function (e) {\n      e.preventDefault();\n\n      var value = _this3.options[e.currentTarget.getAttribute('data-index')].value;\n\n      _this3.props.onModalClose();\n      _this3.props.onChange(value);\n    }, _this3.handleKeyDown = function (e) {\n      switch (e.key) {\n        case 'Escape':\n          _this3.handleClose();\n          break;\n      }\n    }, _this3.handleClose = function () {\n      _this3.setState({ open: false });\n    }, _this3.handleChange = function (value) {\n      _this3.props.onChange(value);\n    }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret2);\n  }\n\n  PrivacyDropdown.prototype.componentWillMount = function componentWillMount() {\n    var formatMessage = this.props.intl.formatMessage;\n\n\n    this.options = [{ icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) }, { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) }, { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) }, { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) }];\n  };\n\n  PrivacyDropdown.prototype.render = function render() {\n    var _props2 = this.props,\n        value = _props2.value,\n        intl = _props2.intl;\n    var _state = this.state,\n        open = _state.open,\n        placement = _state.placement;\n\n\n    var valueOption = this.options.find(function (item) {\n      return item.value === value;\n    });\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown', { active: open }),\n      onKeyDown: this.handleKeyDown\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n      className: 'privacy-dropdown__value-icon',\n      icon: valueOption.icon,\n      title: intl.formatMessage(messages.change_privacy),\n      size: 18,\n      expanded: open,\n      active: open,\n      inverted: true,\n      onClick: this.handleToggle,\n      style: { height: null, lineHeight: '27px' }\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n      show: open,\n      placement: placement,\n      target: this\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(PrivacyDropdownMenu, {\n      items: this.options,\n      value: value,\n      onClose: this.handleClose,\n      onChange: this.handleChange\n    })));\n  };\n\n  return PrivacyDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 318:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(7);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n  marked: {\n    'id': 'compose_form.sensitive.marked',\n    'defaultMessage': 'Media is marked as sensitive'\n  },\n  unmarked: {\n    'id': 'compose_form.sensitive.unmarked',\n    'defaultMessage': 'Media is not marked as sensitive'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    visible: state.getIn(['compose', 'media_attachments']).size > 0,\n    active: state.getIn(['compose', 'sensitive']),\n    disabled: state.getIn(['compose', 'spoiler'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onClick: function onClick() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"G\" /* changeComposeSensitivity */])());\n    }\n  };\n};\n\nvar SensitiveButton = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SensitiveButton, _React$PureComponent);\n\n  function SensitiveButton() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SensitiveButton);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  SensitiveButton.prototype.render = function render() {\n    var _props = this.props,\n        visible = _props.visible,\n        active = _props.active,\n        disabled = _props.disabled,\n        onClick = _props.onClick,\n        intl = _props.intl;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { scale: 0.87 },\n      style: { scale: __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default()(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }\n    }, void 0, function (_ref) {\n      var scale = _ref.scale;\n\n      var icon = active ? 'eye-slash' : 'eye';\n      var className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()('compose-form__sensitive-button', {\n        'compose-form__sensitive-button--visible': visible\n      });\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: className,\n        style: { transform: 'scale(' + scale + ')' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_icon_button__[\"a\" /* default */], {\n        className: 'compose-form__sensitive-button__icon',\n        title: intl.formatMessage(active ? messages.marked : messages.unmarked),\n        icon: icon,\n        onClick: onClick,\n        size: 18,\n        active: active,\n        disabled: disabled,\n        style: { lineHeight: null, height: null },\n        inverted: true\n      }));\n    });\n  };\n\n  return SensitiveButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(SensitiveButton)));\n\n/***/ }),\n\n/***/ 319:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__ = __webpack_require__(320);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_emojis__ = __webpack_require__(102);\n\n\n\n\n\n\n\nvar perLine = 8;\nvar lines = 2;\n\nvar DEFAULTS = ['+1', 'grinning', 'kissing_heart', 'heart_eyes', 'laughing', 'stuck_out_tongue_winking_eye', 'sweat_smile', 'joy', 'yum', 'disappointed', 'thinking_face', 'weary', 'sob', 'sunglasses', 'heart', 'ok_hand'];\n\nvar getFrequentlyUsedEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n  return state.getIn(['settings', 'frequentlyUsedEmojis'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n}], function (emojiCounters) {\n  var emojis = emojiCounters.keySeq().sort(function (a, b) {\n    return emojiCounters.get(a) - emojiCounters.get(b);\n  }).reverse().slice(0, perLine * lines).toArray();\n\n  if (emojis.length < DEFAULTS.length) {\n    var uniqueDefaults = DEFAULTS.filter(function (emoji) {\n      return !emojis.includes(emoji);\n    });\n    emojis = emojis.concat(uniqueDefaults.slice(0, DEFAULTS.length - emojis.length));\n  }\n\n  return emojis;\n});\n\nvar getCustomEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n  return state.get('custom_emojis');\n}], function (emojis) {\n  return emojis.filter(function (e) {\n    return e.get('visible_in_picker');\n  }).sort(function (a, b) {\n    var aShort = a.get('shortcode').toLowerCase();\n    var bShort = b.get('shortcode').toLowerCase();\n\n    if (aShort < bShort) {\n      return -1;\n    } else if (aShort > bShort) {\n      return 1;\n    } else {\n      return 0;\n    }\n  });\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    custom_emojis: getCustomEmojis(state),\n    skinTone: state.getIn(['settings', 'skinTone']),\n    frequentlyUsedEmojis: getFrequentlyUsedEmojis(state)\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var _onPickEmoji = _ref.onPickEmoji;\n  return {\n    onSkinTone: function onSkinTone(skinTone) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['skinTone'], skinTone));\n    },\n\n    onPickEmoji: function onPickEmoji(emoji) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_emojis__[\"b\" /* useEmoji */])(emoji));\n\n      if (_onPickEmoji) {\n        _onPickEmoji(emoji);\n      }\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 320:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return EmojiPickerDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__ = __webpack_require__(58);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__emoji_emoji__ = __webpack_require__(73);\n\n\n\n\n\nvar _class3, _class4, _temp4, _class5;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  emoji: {\n    'id': 'emoji_button.label',\n    'defaultMessage': 'Insert emoji'\n  },\n  emoji_search: {\n    'id': 'emoji_button.search',\n    'defaultMessage': 'Search...'\n  },\n  emoji_not_found: {\n    'id': 'emoji_button.not_found',\n    'defaultMessage': 'No emojos!! (\\u256F\\xB0\\u25A1\\xB0\\uFF09\\u256F\\uFE35 \\u253B\\u2501\\u253B'\n  },\n  custom: {\n    'id': 'emoji_button.custom',\n    'defaultMessage': 'Custom'\n  },\n  recent: {\n    'id': 'emoji_button.recent',\n    'defaultMessage': 'Frequently used'\n  },\n  search_results: {\n    'id': 'emoji_button.search_results',\n    'defaultMessage': 'Search results'\n  },\n  people: {\n    'id': 'emoji_button.people',\n    'defaultMessage': 'People'\n  },\n  nature: {\n    'id': 'emoji_button.nature',\n    'defaultMessage': 'Nature'\n  },\n  food: {\n    'id': 'emoji_button.food',\n    'defaultMessage': 'Food & Drink'\n  },\n  activity: {\n    'id': 'emoji_button.activity',\n    'defaultMessage': 'Activity'\n  },\n  travel: {\n    'id': 'emoji_button.travel',\n    'defaultMessage': 'Travel & Places'\n  },\n  objects: {\n    'id': 'emoji_button.objects',\n    'defaultMessage': 'Objects'\n  },\n  symbols: {\n    'id': 'emoji_button.symbols',\n    'defaultMessage': 'Symbols'\n  },\n  flags: {\n    'id': 'emoji_button.flags',\n    'defaultMessage': 'Flags'\n  }\n});\n\nvar assetHost = process.env.CDN_HOST || '';\nvar EmojiPicker = void 0,\n    Emoji = void 0; // load asynchronously\n\nvar backgroundImageFn = function backgroundImageFn() {\n  return assetHost + '/emoji/sheet.png';\n};\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar categoriesSort = ['recent', 'custom', 'people', 'nature', 'foods', 'activity', 'places', 'objects', 'symbols', 'flags'];\n\nvar ModifierPickerMenu = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPickerMenu, _React$PureComponent);\n\n  function ModifierPickerMenu() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPickerMenu);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n      _this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n    }, _this.handleDocumentClick = function (e) {\n      if (_this.node && !_this.node.contains(e.target)) {\n        _this.props.onClose();\n      }\n    }, _this.setRef = function (c) {\n      _this.node = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ModifierPickerMenu.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n    if (nextProps.active) {\n      this.attachListeners();\n    } else {\n      this.removeListeners();\n    }\n  };\n\n  ModifierPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    this.removeListeners();\n  };\n\n  ModifierPickerMenu.prototype.attachListeners = function attachListeners() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  ModifierPickerMenu.prototype.removeListeners = function removeListeners() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  ModifierPickerMenu.prototype.render = function render() {\n    var active = this.props.active;\n\n\n    return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { className: 'emoji-picker-dropdown__modifiers__menu', style: { display: active ? 'block' : 'none' }, ref: this.setRef },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 1\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 1,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 2\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 2,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 3\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 3,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 4\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 4,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 5\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 5,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 6\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 6,\n        backgroundImageFn: backgroundImageFn\n      }))\n    );\n  };\n\n  return ModifierPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar ModifierPicker = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPicker, _React$PureComponent2);\n\n  function ModifierPicker() {\n    var _temp2, _this2, _ret2;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPicker);\n\n    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleClick = function () {\n      if (_this2.props.active) {\n        _this2.props.onClose();\n      } else {\n        _this2.props.onOpen();\n      }\n    }, _this2.handleSelect = function (modifier) {\n      _this2.props.onChange(modifier);\n      _this2.props.onClose();\n    }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n  }\n\n  ModifierPicker.prototype.render = function render() {\n    var _props = this.props,\n        active = _props.active,\n        modifier = _props.modifier;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'emoji-picker-dropdown__modifiers'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n      emoji: 'fist',\n      set: 'twitter',\n      size: 22,\n      sheetSize: 32,\n      skin: modifier,\n      onClick: this.handleClick,\n      backgroundImageFn: backgroundImageFn\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPickerMenu, {\n      active: active,\n      onSelect: this.handleSelect,\n      onClose: this.props.onClose\n    }));\n  };\n\n  return ModifierPicker;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar EmojiPickerMenu = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class3 = (_temp4 = _class4 = function (_React$PureComponent3) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerMenu, _React$PureComponent3);\n\n  function EmojiPickerMenu() {\n    var _temp3, _this3, _ret3;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerMenu);\n\n    for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n      args[_key3] = arguments[_key3];\n    }\n\n    return _ret3 = (_temp3 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent3.call.apply(_React$PureComponent3, [this].concat(args))), _this3), _this3.state = {\n      modifierOpen: false,\n      placement: null\n    }, _this3.handleDocumentClick = function (e) {\n      if (_this3.node && !_this3.node.contains(e.target)) {\n        _this3.props.onClose();\n      }\n    }, _this3.setRef = function (c) {\n      _this3.node = c;\n    }, _this3.getI18n = function () {\n      var intl = _this3.props.intl;\n\n\n      return {\n        search: intl.formatMessage(messages.emoji_search),\n        notfound: intl.formatMessage(messages.emoji_not_found),\n        categories: {\n          search: intl.formatMessage(messages.search_results),\n          recent: intl.formatMessage(messages.recent),\n          people: intl.formatMessage(messages.people),\n          nature: intl.formatMessage(messages.nature),\n          foods: intl.formatMessage(messages.food),\n          activity: intl.formatMessage(messages.activity),\n          places: intl.formatMessage(messages.travel),\n          objects: intl.formatMessage(messages.objects),\n          symbols: intl.formatMessage(messages.symbols),\n          flags: intl.formatMessage(messages.flags),\n          custom: intl.formatMessage(messages.custom)\n        }\n      };\n    }, _this3.handleClick = function (emoji) {\n      if (!emoji.native) {\n        emoji.native = emoji.colons;\n      }\n\n      _this3.props.onClose();\n      _this3.props.onPick(emoji);\n    }, _this3.handleModifierOpen = function () {\n      _this3.setState({ modifierOpen: true });\n    }, _this3.handleModifierClose = function () {\n      _this3.setState({ modifierOpen: false });\n    }, _this3.handleModifierChange = function (modifier) {\n      _this3.props.onSkinTone(modifier);\n    }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret3);\n  }\n\n  EmojiPickerMenu.prototype.componentDidMount = function componentDidMount() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  EmojiPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  EmojiPickerMenu.prototype.render = function render() {\n    var _props2 = this.props,\n        loading = _props2.loading,\n        style = _props2.style,\n        intl = _props2.intl,\n        custom_emojis = _props2.custom_emojis,\n        skinTone = _props2.skinTone,\n        frequentlyUsedEmojis = _props2.frequentlyUsedEmojis;\n\n\n    if (loading) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        style: { width: 299 }\n      });\n    }\n\n    var title = intl.formatMessage(messages.emoji);\n    var modifierOpen = this.state.modifierOpen;\n\n\n    return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emoji-picker-dropdown__menu', { selecting: modifierOpen }), style: style, ref: this.setRef },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPicker, {\n        perLine: 8,\n        emojiSize: 22,\n        sheetSize: 32,\n        custom: Object(__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__[\"buildCustomEmojis\"])(custom_emojis),\n        color: '',\n        emoji: '',\n        set: 'twitter',\n        title: title,\n        i18n: this.getI18n(),\n        onClick: this.handleClick,\n        include: categoriesSort,\n        recent: frequentlyUsedEmojis,\n        skin: skinTone,\n        showPreview: false,\n        backgroundImageFn: backgroundImageFn,\n        emojiTooltip: true\n      }),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPicker, {\n        active: modifierOpen,\n        modifier: skinTone,\n        onOpen: this.handleModifierOpen,\n        onClose: this.handleModifierClose,\n        onChange: this.handleModifierChange\n      })\n    );\n  };\n\n  return EmojiPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class4.defaultProps = {\n  style: {},\n  loading: true,\n  frequentlyUsedEmojis: []\n}, _temp4)) || _class3;\n\nvar EmojiPickerDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class5 = function (_React$PureComponent4) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerDropdown, _React$PureComponent4);\n\n  function EmojiPickerDropdown() {\n    var _temp5, _this4, _ret4;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerDropdown);\n\n    for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n      args[_key4] = arguments[_key4];\n    }\n\n    return _ret4 = (_temp5 = (_this4 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent4.call.apply(_React$PureComponent4, [this].concat(args))), _this4), _this4.state = {\n      active: false,\n      loading: false\n    }, _this4.setRef = function (c) {\n      _this4.dropdown = c;\n    }, _this4.onShowDropdown = function (_ref) {\n      var target = _ref.target;\n\n      _this4.setState({ active: true });\n\n      if (!EmojiPicker) {\n        _this4.setState({ loading: true });\n\n        Object(__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__[\"i\" /* EmojiPicker */])().then(function (EmojiMart) {\n          EmojiPicker = EmojiMart.Picker;\n          Emoji = EmojiMart.Emoji;\n\n          _this4.setState({ loading: false });\n        }).catch(function () {\n          _this4.setState({ loading: false });\n        });\n      }\n\n      var _target$getBoundingCl = target.getBoundingClientRect(),\n          top = _target$getBoundingCl.top;\n\n      _this4.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n    }, _this4.onHideDropdown = function () {\n      _this4.setState({ active: false });\n    }, _this4.onToggle = function (e) {\n      if (!_this4.state.loading && (!e.key || e.key === 'Enter')) {\n        if (_this4.state.active) {\n          _this4.onHideDropdown();\n        } else {\n          _this4.onShowDropdown(e);\n        }\n      }\n    }, _this4.handleKeyDown = function (e) {\n      if (e.key === 'Escape') {\n        _this4.onHideDropdown();\n      }\n    }, _this4.setTargetRef = function (c) {\n      _this4.target = c;\n    }, _this4.findTarget = function () {\n      return _this4.target;\n    }, _temp5), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this4, _ret4);\n  }\n\n  EmojiPickerDropdown.prototype.render = function render() {\n    var _props3 = this.props,\n        intl = _props3.intl,\n        onPickEmoji = _props3.onPickEmoji,\n        onSkinTone = _props3.onSkinTone,\n        skinTone = _props3.skinTone,\n        frequentlyUsedEmojis = _props3.frequentlyUsedEmojis;\n\n    var title = intl.formatMessage(messages.emoji);\n    var _state = this.state,\n        active = _state.active,\n        loading = _state.loading,\n        placement = _state.placement;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'emoji-picker-dropdown',\n      onKeyDown: this.handleKeyDown\n    }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { ref: this.setTargetRef, className: 'emoji-button', title: title, 'aria-label': title, 'aria-expanded': active, role: 'button', onClick: this.onToggle, onKeyDown: this.onToggle, tabIndex: 0 },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n        className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emojione', { 'pulse-loading': active && loading }),\n        alt: '\\uD83D\\uDE42',\n        src: assetHost + '/emoji/1f602.svg'\n      })\n    ), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n      show: active,\n      placement: placement,\n      target: this.findTarget\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPickerMenu, {\n      custom_emojis: this.props.custom_emojis,\n      loading: loading,\n      onClose: this.onHideDropdown,\n      onPick: onPickEmoji,\n      onSkinTone: onSkinTone,\n      skinTone: skinTone,\n      frequentlyUsedEmojis: frequentlyUsedEmojis\n    })));\n  };\n\n  return EmojiPickerDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class5;\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(35)))\n\n/***/ }),\n\n/***/ 321:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_form__ = __webpack_require__(322);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    mediaIds: state.getIn(['compose', 'media_attachments']).map(function (item) {\n      return item.get('id');\n    })\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 322:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__ = __webpack_require__(323);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_upload_container__ = __webpack_require__(325);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar UploadForm = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadForm, _ImmutablePureCompone);\n\n  function UploadForm() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadForm);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  UploadForm.prototype.render = function render() {\n    var mediaIds = this.props.mediaIds;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__uploads-wrapper'\n    }, void 0, mediaIds.map(function (id) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__[\"a\" /* default */], {\n        id: id\n      }, id);\n    })));\n  };\n\n  return UploadForm;\n}(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default.a), _class.propTypes = {\n  mediaIds: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.list.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 323:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_progress__ = __webpack_require__(324);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    active: state.getIn(['compose', 'is_uploading']),\n    progress: state.getIn(['compose', 'progress'])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 324:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadProgress; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(7);\n\n\n\n\n\n\n\n\n\n\nvar UploadProgress = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadProgress, _React$PureComponent);\n\n  function UploadProgress() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadProgress);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  UploadProgress.prototype.render = function render() {\n    var _props = this.props,\n        active = _props.active,\n        progress = _props.progress;\n\n\n    if (!active) {\n      return null;\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__icon'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      className: 'fa fa-upload'\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__message'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'upload_progress.label',\n      defaultMessage: 'Uploading...'\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__backdrop'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { width: 0 },\n      style: { width: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(progress) }\n    }, void 0, function (_ref) {\n      var width = _ref.width;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'upload-progress__tracker',\n        style: { width: width + '%' }\n      });\n    }))));\n  };\n\n  return UploadProgress;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 325:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload__ = __webpack_require__(326);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n  var id = _ref.id;\n  return {\n    media: state.getIn(['compose', 'media_attachments']).find(function (item) {\n      return item.get('id') === id;\n    })\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n\n    onUndo: function onUndo(id) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"X\" /* undoUploadCompose */])(id));\n    },\n\n    onDescriptionChange: function onDescriptionChange(id, description) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"L\" /* changeUploadCompose */])(id, { description: description }));\n    },\n\n    onOpenFocalPoint: function onOpenFocalPoint(id) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('FOCAL_POINT', { id: id }));\n    }\n\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 326:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Upload; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  description: {\n    'id': 'upload_form.description',\n    'defaultMessage': 'Describe for the visually impaired'\n  }\n});\n\nvar Upload = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Upload, _ImmutablePureCompone);\n\n  function Upload() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Upload);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n      hovered: false,\n      focused: false,\n      dirtyDescription: null\n    }, _this.handleUndoClick = function () {\n      _this.props.onUndo(_this.props.media.get('id'));\n    }, _this.handleFocalPointClick = function () {\n      _this.props.onOpenFocalPoint(_this.props.media.get('id'));\n    }, _this.handleInputChange = function (e) {\n      _this.setState({ dirtyDescription: e.target.value });\n    }, _this.handleMouseEnter = function () {\n      _this.setState({ hovered: true });\n    }, _this.handleMouseLeave = function () {\n      _this.setState({ hovered: false });\n    }, _this.handleInputFocus = function () {\n      _this.setState({ focused: true });\n    }, _this.handleInputBlur = function () {\n      var dirtyDescription = _this.state.dirtyDescription;\n\n\n      _this.setState({ focused: false, dirtyDescription: null });\n\n      if (dirtyDescription !== null) {\n        _this.props.onDescriptionChange(_this.props.media.get('id'), dirtyDescription);\n      }\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Upload.prototype.render = function render() {\n    var _this2 = this;\n\n    var _props = this.props,\n        intl = _props.intl,\n        media = _props.media;\n\n    var active = this.state.hovered || this.state.focused;\n    var description = this.state.dirtyDescription || this.state.dirtyDescription !== '' && media.get('description') || '';\n    var focusX = media.getIn(['meta', 'focus', 'x']);\n    var focusY = media.getIn(['meta', 'focus', 'y']);\n    var x = (focusX / 2 + .5) * 100;\n    var y = (focusY / -2 + .5) * 100;\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload',\n      onMouseEnter: this.handleMouseEnter,\n      onMouseLeave: this.handleMouseLeave\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { scale: 0.8 },\n      style: { scale: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { stiffness: 180, damping: 12 }) }\n    }, void 0, function (_ref) {\n      var scale = _ref.scale;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'compose-form__upload-thumbnail',\n        style: { transform: 'scale(' + scale + ')', backgroundImage: 'url(' + media.get('preview_url') + ')', backgroundPosition: x + '% ' + y + '%' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload__actions', { active: active })\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        className: 'icon-button',\n        onClick: _this2.handleUndoClick\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-times'\n      }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'upload_form.undo',\n        defaultMessage: 'Delete'\n      })), media.get('type') === 'image' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        className: 'icon-button',\n        onClick: _this2.handleFocalPointClick\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-crosshairs'\n      }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'upload_form.focus',\n        defaultMessage: 'Crop'\n      }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload-description', { active: active })\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        style: { display: 'none' }\n      }, void 0, intl.formatMessage(messages.description)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n        placeholder: intl.formatMessage(messages.description),\n        type: 'text',\n        value: description,\n        maxLength: 420,\n        onFocus: _this2.handleInputFocus,\n        onChange: _this2.handleInputChange,\n        onBlur: _this2.handleInputBlur\n      }))));\n    }));\n  };\n\n  return Upload;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n  media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n  onUndo: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onDescriptionChange: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onOpenFocalPoint: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 327:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_warning__ = __webpack_require__(328);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__initial_state__ = __webpack_require__(13);\n\n\n\n\n\n\n\n\nvar APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_5__initial_state__[\"g\" /* me */], 'locked']),\n    hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n    directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct'\n  };\n};\n\nvar WarningWrapper = function WarningWrapper(_ref) {\n  var needsLockWarning = _ref.needsLockWarning,\n      hashtagWarning = _ref.hashtagWarning,\n      directMessageWarning = _ref.directMessageWarning;\n\n  if (needsLockWarning) {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'compose_form.lock_disclaimer',\n        defaultMessage: 'Your account is not {locked}. Anyone can follow you to view your follower-only posts.',\n        values: { locked: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n            href: '/user-settings'\n          }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n            id: 'compose_form.lock_disclaimer.lock',\n            defaultMessage: 'locked'\n          })) }\n      })\n    });\n  }\n\n  if (hashtagWarning) {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'compose_form.hashtag_warning',\n        defaultMessage: 'This toot won\\'t be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.'\n      })\n    });\n  }\n\n  if (directMessageWarning) {\n    var message = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'compose_form.direct_message_warning',\n      defaultMessage: 'This toot will only be sent to all the mentioned users.'\n    }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n      href: '/terms',\n      target: '_blank'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'compose_form.direct_message_warning_learn_more',\n      defaultMessage: 'Learn more'\n    })));\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: message\n    });\n  }\n\n  return null;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(mapStateToProps)(WarningWrapper));\n\n/***/ }),\n\n/***/ 328:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Warning; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n\n\n\n\n\n\n\n\n\nvar Warning = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Warning, _React$PureComponent);\n\n  function Warning() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Warning);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  Warning.prototype.render = function render() {\n    var message = this.props.message;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'compose-form__warning',\n        style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n      }, void 0, message);\n    });\n  };\n\n  return Warning;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 329:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = countableText;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__url_regex__ = __webpack_require__(330);\n\n\nvar urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nfunction countableText(inputText) {\n  return inputText;\n};\n\n/***/ }),\n\n/***/ 330:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export urlRegex */\nvar regexen = {};\n\nvar regexSupplant = function regexSupplant(regex, flags) {\n  flags = flags || '';\n  if (typeof regex !== 'string') {\n    if (regex.global && flags.indexOf('g') < 0) {\n      flags += 'g';\n    }\n    if (regex.ignoreCase && flags.indexOf('i') < 0) {\n      flags += 'i';\n    }\n    if (regex.multiline && flags.indexOf('m') < 0) {\n      flags += 'm';\n    }\n\n    regex = regex.source;\n  }\n  return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n    var newRegex = regexen[name] || '';\n    if (typeof newRegex !== 'string') {\n      newRegex = newRegex.source;\n    }\n    return newRegex;\n  }), flags);\n};\n\nvar stringSupplant = function stringSupplant(str, values) {\n  return str.replace(/#\\{(\\w+)\\}/g, function (match, name) {\n    return values[name] || '';\n  });\n};\n\nvar urlRegex = function () {\n  regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n  regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n  regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n  regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n  regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n  regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n  regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n  regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n  regexen.validGTLD = regexSupplant(RegExp('(?:(?:' + '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' + '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' + 'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' + 'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' + 'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' + 'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' + 'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' + 'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' + 'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' + 'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' + 'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' + 'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' + 'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' + 'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' + 'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' + 'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' + 'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' + 'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' + 'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' + 'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' + 'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' + 'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' + 'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' + 'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' + 'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' + 'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' + 'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' + 'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' + 'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' + 'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' + 'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' + 'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' + 'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' + 'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' + 'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' + 'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' + 'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' + 'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' + 'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' + 'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' + 'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' + 'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' + 'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' + 'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' + 'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' + 'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' + 'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' + 'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' + 'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' + 'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' + 'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' + 'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' + 'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' + 'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' + 'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' + 'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' + 'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' + 'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' + 'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' + 'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' + 'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' + 'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' + 'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' + 'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' + 'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' + 'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' + 'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' + 'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' + 'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' + 'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' + 'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' + 'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' + 'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' + 'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' + 'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' + 'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' + 'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' + 'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' + 'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' + 'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' + 'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' + 'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' + 'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' + 'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' + 'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' + 'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' + 'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' + 'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' + ')(?=[^0-9a-zA-Z@]|$))'));\n  regexen.validCCTLD = regexSupplant(RegExp('(?:(?:' + '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' + 'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' + 'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' + 'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' + 'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' + 're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' + 'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' + 'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' + 'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' + 'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' + 'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' + ')(?=[^0-9a-zA-Z@]|$))'));\n  regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n  regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n  regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n  regexen.validPortNumber = /[0-9]+/;\n  regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n  regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n  // Allow URL paths to contain up to two nested levels of balanced parens\n  //  1. Used in Wikipedia URLs like /Primer_(film)\n  //  2. Used in IIS sessions like /S(dfd346)/\n  //  3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n  regexen.validUrlBalancedParens = regexSupplant('\\\\(' + '(?:' + '#{validGeneralUrlPathChars}+' + '|' +\n  // allow one nested level of balanced parentheses\n  '(?:' + '#{validGeneralUrlPathChars}*' + '\\\\(' + '#{validGeneralUrlPathChars}+' + '\\\\)' + '#{validGeneralUrlPathChars}*' + ')' + ')' + '\\\\)', 'i');\n  // Valid end-of-path chracters (so /foo. does not gobble the period).\n  // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n  regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n  // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n  regexen.validUrlPath = regexSupplant('(?:' + '(?:' + '#{validGeneralUrlPathChars}*' + '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' + '#{validUrlPathEndingChars}' + ')|(?:@#{validGeneralUrlPathChars}+\\/)' + ')', 'i');\n  regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n  regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n  regexen.validUrl = regexSupplant('(' + // $1 URL\n  '(https?:\\\\/\\\\/)' + // $2 Protocol\n  '(#{validDomain})' + // $3 Domain(s)\n  '(?::(#{validPortNumber}))?' + // $4 Port number (optional)\n  '(\\\\/#{validUrlPath}*)?' + // $5 URL Path\n  '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?' + // $6 Query String\n  ')', 'gi');\n  return regexen.validUrl;\n}();\n\n/***/ }),\n\n/***/ 331:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_compose_form__ = __webpack_require__(302);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    text: state.getIn(['compose', 'text']),\n    suggestion_token: state.getIn(['compose', 'suggestion_token']),\n    suggestions: state.getIn(['compose', 'suggestions']),\n    spoiler: state.getIn(['compose', 'spoiler']),\n    spoiler_text: state.getIn(['compose', 'spoiler_text']),\n    privacy: state.getIn(['compose', 'privacy']),\n    focusDate: state.getIn(['compose', 'focusDate']),\n    caretPosition: state.getIn(['compose', 'caretPosition']),\n    preselectDate: state.getIn(['compose', 'preselectDate']),\n    is_submitting: state.getIn(['compose', 'is_submitting']),\n    is_uploading: state.getIn(['compose', 'is_uploading']),\n    showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n    anyMedia: state.getIn(['compose', 'media_attachments']).size > 0\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(text) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"F\" /* changeCompose */])(text));\n    },\n    onSubmit: function onSubmit() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"W\" /* submitCompose */])());\n    },\n    onClearSuggestions: function onClearSuggestions() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"M\" /* clearComposeSuggestions */])());\n    },\n    onFetchSuggestions: function onFetchSuggestions(token) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"O\" /* fetchComposeSuggestions */])(token));\n    },\n    onSuggestionSelected: function onSuggestionSelected(position, token, accountId) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"V\" /* selectComposeSuggestion */])(position, token, accountId));\n    },\n    onChangeSpoilerText: function onChangeSpoilerText(checked) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"H\" /* changeComposeSpoilerText */])(checked));\n    },\n    onPaste: function onPaste(files) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n    },\n    onPickEmoji: function onPickEmoji(position, data, needsSpace) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Q\" /* insertEmojiCompose */])(position, data, needsSpace));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_compose_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 824:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Compose; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__ = __webpack_require__(331);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__ = __webpack_require__(992);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_search_container__ = __webpack_require__(993);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__ = __webpack_require__(994);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  start: {\n    'id': 'getting_started.heading',\n    'defaultMessage': 'Getting started'\n  },\n  home_timeline: {\n    'id': 'tabs_bar.home',\n    'defaultMessage': 'Home'\n  },\n  notifications: {\n    'id': 'tabs_bar.notifications',\n    'defaultMessage': 'Notifications'\n  },\n  public: {\n    'id': 'navigation_bar.public_timeline',\n    'defaultMessage': 'Federated timeline'\n  },\n  community: {\n    'id': 'navigation_bar.community_timeline',\n    'defaultMessage': 'Local timeline'\n  },\n  preferences: {\n    'id': 'navigation_bar.preferences',\n    'defaultMessage': 'Preferences'\n  },\n  logout: {\n    'id': 'navigation_bar.logout',\n    'defaultMessage': 'Logout'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state, ownProps) {\n  return {\n    columns: state.getIn(['settings', 'columns']),\n    showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage\n  };\n};\n\nvar Compose = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Compose, _React$PureComponent);\n\n  function Compose() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Compose);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onFocus = function () {\n      _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(true));\n    }, _this.onBlur = function () {\n      _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(false));\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Compose.prototype.componentDidMount = function componentDidMount() {\n    var isSearchPage = this.props.isSearchPage;\n\n\n    if (!isSearchPage) {\n      this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"S\" /* mountCompose */])());\n    }\n  };\n\n  Compose.prototype.componentWillUnmount = function componentWillUnmount() {\n    var isSearchPage = this.props.isSearchPage;\n\n\n    if (!isSearchPage) {\n      this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"Y\" /* unmountCompose */])());\n    }\n  };\n\n  Compose.prototype.render = function render() {\n    var _props = this.props,\n        multiColumn = _props.multiColumn,\n        showSearch = _props.showSearch,\n        isSearchPage = _props.isSearchPage,\n        intl = _props.intl;\n\n\n    var header = '';\n\n    if (multiColumn) {\n      var columns = this.props.columns;\n\n      header = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('nav', {\n        className: 'drawer__header'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/getting-started',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.start),\n        'aria-label': intl.formatMessage(messages.start)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-asterisk'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'HOME';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/home',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.home_timeline),\n        'aria-label': intl.formatMessage(messages.home_timeline)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-home'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'NOTIFICATIONS';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/notifications',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.notifications),\n        'aria-label': intl.formatMessage(messages.notifications)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-bell'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'COMMUNITY';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/public/local',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.community),\n        'aria-label': intl.formatMessage(messages.community)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-users'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'PUBLIC';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/public',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.public),\n        'aria-label': intl.formatMessage(messages.public)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-globe'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n        href: '/user-settings',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.preferences),\n        'aria-label': intl.formatMessage(messages.preferences)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-cog'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n        href: '/auth/sign_out',\n        className: 'drawer__tab',\n        'data-method': 'delete',\n        title: intl.formatMessage(messages.logout),\n        'aria-label': intl.formatMessage(messages.logout)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-sign-out'\n      })));\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer'\n    }, void 0, header, (multiColumn || isSearchPage) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_search_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer__pager'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer__inner',\n      onFocus: this.onFocus\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__[\"a\" /* default */], {\n      onClose: this.onBlur\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__[\"a\" /* default */], {}), multiColumn && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer__inner__mastodon'\n    }, void 0)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { x: isSearchPage ? 0 : -100 },\n      style: { x: __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default()(showSearch || isSearchPage ? 0 : -100, { stiffness: 210, damping: 20 }) }\n    }, void 0, function (_ref) {\n      var x = _ref.x;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'drawer__inner darker',\n        style: { transform: 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__[\"a\" /* default */], {}));\n    })));\n  };\n\n  return Compose;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(880);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(89);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(13);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n  unfollowConfirm: {\n    'id': 'confirmations.unfollow.confirm',\n    'defaultMessage': 'Unfollow'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n  var mapStateToProps = function mapStateToProps(state, props) {\n    return {\n      account: getAccount(state, props.id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var intl = _ref.intl;\n  return {\n    onFollow: function onFollow(account) {\n      if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n        if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"j\" /* unfollowModal */]) {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n            message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n              id: 'confirmations.unfollow.message',\n              defaultMessage: 'Are you sure you want to unfollow {name}?',\n              values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n            }),\n            confirm: intl.formatMessage(messages.unfollowConfirm),\n            onConfirm: function onConfirm() {\n              return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n            }\n          }));\n        } else {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n        }\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n      }\n    },\n    onBlock: function onBlock(account) {\n      if (account.getIn(['relationship', 'blocking'])) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n      }\n    },\n    onMute: function onMute(account) {\n      if (account.getIn(['relationship', 'muting'])) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"g\" /* initMuteModal */])(account));\n      }\n    },\n    onMuteNotifications: function onMuteNotifications(account, notifications) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 880:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n  follow: {\n    'id': 'account.follow',\n    'defaultMessage': 'Follow'\n  },\n  unfollow: {\n    'id': 'account.unfollow',\n    'defaultMessage': 'Unfollow'\n  },\n  requested: {\n    'id': 'account.requested',\n    'defaultMessage': 'Awaiting approval'\n  },\n  unblock: {\n    'id': 'account.unblock',\n    'defaultMessage': 'Unblock @{name}'\n  },\n  unmute: {\n    'id': 'account.unmute',\n    'defaultMessage': 'Unmute @{name}'\n  },\n  mute_notifications: {\n    'id': 'account.mute_notifications',\n    'defaultMessage': 'Mute notifications from @{name}'\n  },\n  unmute_notifications: {\n    'id': 'account.unmute_notifications',\n    'defaultMessage': 'Unmute notifications from @{name}'\n  }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n  function Account() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n      _this.props.onFollow(_this.props.account);\n    }, _this.handleBlock = function () {\n      _this.props.onBlock(_this.props.account);\n    }, _this.handleMute = function () {\n      _this.props.onMute(_this.props.account);\n    }, _this.handleMuteNotifications = function () {\n      _this.props.onMuteNotifications(_this.props.account, true);\n    }, _this.handleUnmuteNotifications = function () {\n      _this.props.onMuteNotifications(_this.props.account, false);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Account.prototype.render = function render() {\n    var _props = this.props,\n        account = _props.account,\n        intl = _props.intl,\n        hidden = _props.hidden;\n\n\n    if (!account) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n    }\n\n    if (hidden) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n    }\n\n    var buttons = void 0;\n\n    if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"g\" /* me */] && account.get('relationship', null) !== null) {\n      var following = account.getIn(['relationship', 'following']);\n      var requested = account.getIn(['relationship', 'requested']);\n      var blocking = account.getIn(['relationship', 'blocking']);\n      var muting = account.getIn(['relationship', 'muting']);\n\n      if (requested) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          disabled: true,\n          icon: 'hourglass',\n          title: intl.formatMessage(messages.requested)\n        });\n      } else if (blocking) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          active: true,\n          icon: 'unlock-alt',\n          title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n          onClick: this.handleBlock\n        });\n      } else if (muting) {\n        var hidingNotificationsButton = void 0;\n        if (account.getIn(['relationship', 'muting_notifications'])) {\n          hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n            active: true,\n            icon: 'bell',\n            title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n            onClick: this.handleUnmuteNotifications\n          });\n        } else {\n          hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n            active: true,\n            icon: 'bell-slash',\n            title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n            onClick: this.handleMuteNotifications\n          });\n        }\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          active: true,\n          icon: 'volume-up',\n          title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n          onClick: this.handleMute\n        }), hidingNotificationsButton);\n      } else if (!account.get('moved') || following) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          icon: following ? 'user-times' : 'user-plus',\n          title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n          onClick: this.handleFollow,\n          active: following\n        });\n      }\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n      className: 'account__display-name',\n      href: account.get('url'),\n      to: '/accounts/' + account.get('id')\n    }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__avatar-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n      account: account,\n      size: 36\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n      account: account\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__relationship'\n    }, void 0, buttons)));\n  };\n\n  return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n  onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n  hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 906:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return NavigationBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_permalink__ = __webpack_require__(296);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\n\nvar NavigationBar = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(NavigationBar, _ImmutablePureCompone);\n\n  function NavigationBar() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, NavigationBar);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  NavigationBar.prototype.render = function render() {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'navigation-bar'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n      href: this.props.account.get('url'),\n      to: '/accounts/' + this.props.account.get('id')\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, this.props.account.get('acct')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n      account: this.props.account,\n      size: 40\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'navigation-bar__profile'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n      href: this.props.account.get('url'),\n      to: '/accounts/' + this.props.account.get('id')\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n      className: 'navigation-bar__profile-account'\n    }, void 0, '@', this.props.account.get('acct'))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n      href: '/user-settings',\n      className: 'navigation-bar__profile-edit'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'navigation_bar.edit_profile',\n      defaultMessage: 'Edit profile'\n    }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n      title: '',\n      icon: 'close',\n      onClick: this.props.onClose\n    }));\n  };\n\n  return NavigationBar;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n  onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func\n}, _temp);\n\n\n/***/ }),\n\n/***/ 907:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  placeholder: {\n    'id': 'search.placeholder',\n    'defaultMessage': 'Search'\n  }\n});\n\nvar SearchPopout = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchPopout, _React$PureComponent);\n\n  function SearchPopout() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchPopout);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  SearchPopout.prototype.render = function render() {\n    var style = this.props.style;\n\n    var extraInformation = __WEBPACK_IMPORTED_MODULE_9__initial_state__[\"i\" /* searchEnabled */] ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_popout.tips.full_text',\n      defaultMessage: 'Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.'\n    }) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_popout.tips.text',\n      defaultMessage: 'Simple text returns matching display names, usernames and hashtags'\n    });\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      style: Object.assign({}, style, { position: 'absolute', width: 285 })\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-popout',\n        style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.search_format',\n        defaultMessage: 'Advanced search format'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('ul', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '#example'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.hashtag',\n        defaultMessage: 'hashtag'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '@username@domain'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.user',\n        defaultMessage: 'user'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.user',\n        defaultMessage: 'user'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.status',\n        defaultMessage: 'status'\n      }))), extraInformation);\n    }));\n  };\n\n  return SearchPopout;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar Search = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent2);\n\n  function Search() {\n    var _temp, _this2, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n      expanded: false\n    }, _this2.handleChange = function (e) {\n      _this2.props.onChange(e.target.value);\n    }, _this2.handleClear = function (e) {\n      e.preventDefault();\n\n      if (_this2.props.value.length > 0 || _this2.props.submitted) {\n        _this2.props.onClear();\n      }\n    }, _this2.handleKeyDown = function (e) {\n      if (e.key === 'Enter') {\n        e.preventDefault();\n        _this2.props.onSubmit();\n      } else if (e.key === 'Escape') {\n        document.querySelector('.ui').parentElement.focus();\n      }\n    }, _this2.handleFocus = function () {\n      _this2.setState({ expanded: true });\n      _this2.props.onShow();\n    }, _this2.handleBlur = function () {\n      _this2.setState({ expanded: false });\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret);\n  }\n\n  Search.prototype.noop = function noop() {};\n\n  Search.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        value = _props.value,\n        submitted = _props.submitted;\n    var expanded = this.state.expanded;\n\n    var hasValue = value.length > 0 || submitted;\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n      className: 'search__input',\n      type: 'text',\n      placeholder: intl.formatMessage(messages.placeholder),\n      value: value,\n      onChange: this.handleChange,\n      onKeyUp: this.handleKeyDown,\n      onFocus: this.handleFocus,\n      onBlur: this.handleBlur\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      role: 'button',\n      tabIndex: '0',\n      className: 'search__icon',\n      onClick: this.handleClear\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      className: 'fa fa-search ' + (hasValue ? '' : 'active')\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      'aria-label': intl.formatMessage(messages.placeholder),\n      className: 'fa fa-times-circle ' + (hasValue ? 'active' : '')\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default.a, {\n      show: expanded && !hasValue,\n      placement: 'bottom',\n      target: this\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(SearchPopout, {})));\n  };\n\n  return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 992:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__ = __webpack_require__(906);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__initial_state__ = __webpack_require__(13);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    account: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_2__initial_state__[\"g\" /* me */]])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 993:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_search__ = __webpack_require__(336);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_search__ = __webpack_require__(907);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    value: state.getIn(['search', 'value']),\n    submitted: state.getIn(['search', 'submitted'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(value) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"e\" /* changeSearch */])(value));\n    },\n    onClear: function onClear() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"f\" /* clearSearch */])());\n    },\n    onSubmit: function onSubmit() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"h\" /* submitSearch */])());\n    },\n    onShow: function onShow() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"g\" /* showSearch */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_search__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 994:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_search_results__ = __webpack_require__(995);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    results: state.getIn(['search', 'results'])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_search_results__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 995:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SearchResults; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_account_container__ = __webpack_require__(879);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_status_container__ = __webpack_require__(286);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\nvar SearchResults = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchResults, _ImmutablePureCompone);\n\n  function SearchResults() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchResults);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  SearchResults.prototype.render = function render() {\n    var results = this.props.results;\n\n\n    var accounts = void 0,\n        statuses = void 0,\n        hashtags = void 0;\n    var count = 0;\n\n    if (results.get('accounts') && results.get('accounts').size > 0) {\n      count += results.get('accounts').size;\n      accounts = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.accounts',\n        defaultMessage: 'People'\n      })), results.get('accounts').map(function (accountId) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_account_container__[\"a\" /* default */], {\n          id: accountId\n        }, accountId);\n      }));\n    }\n\n    if (results.get('statuses') && results.get('statuses').size > 0) {\n      count += results.get('statuses').size;\n      statuses = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.statuses',\n        defaultMessage: 'Toots'\n      })), results.get('statuses').map(function (statusId) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_status_container__[\"a\" /* default */], {\n          id: statusId\n        }, statusId);\n      }));\n    }\n\n    if (results.get('hashtags') && results.get('hashtags').size > 0) {\n      count += results.get('hashtags').size;\n      hashtags = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.hashtags',\n        defaultMessage: 'Hashtags'\n      })), results.get('hashtags').map(function (hashtag) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n          className: 'search-results__hashtag',\n          to: '/timelines/tag/' + hashtag\n        }, hashtag, '#', hashtag);\n      }));\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search-results'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search-results__header'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_results.total',\n      defaultMessage: '{count, number} {count, plural, one {result} other {results}}',\n      values: { count: count }\n    })), accounts, statuses, hashtags);\n  };\n\n  return SearchResults;\n}(__WEBPACK_IMPORTED_MODULE_10_react_immutable_pure_component___default.a), _class.propTypes = {\n  results: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/compose.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n  replyCompose,\n  mentionCompose,\n  directCompose,\n} from '../actions/compose';\nimport {\n  reblog,\n  favourite,\n  unreblog,\n  unfavourite,\n  pin,\n  unpin,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n  muteStatus,\n  unmuteStatus,\n  deleteStatus,\n  hideStatus,\n  revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\nimport { showAlertForError } from '../actions/alerts';\n\nconst messages = defineMessages({\n  deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n  deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n  blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n  const getStatus = makeGetStatus();\n\n  const mapStateToProps = (state, props) => ({\n    status: getStatus(state, props.id),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n  onReply (status, router) {\n    dispatch(replyCompose(status, router));\n  },\n\n  onModalReblog (status) {\n    dispatch(reblog(status));\n  },\n\n  onReblog (status, e) {\n    if (status.get('reblogged')) {\n      dispatch(unreblog(status));\n    } else {\n      if (e.shiftKey || !boostModal) {\n        this.onModalReblog(status);\n      } else {\n        dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n      }\n    }\n  },\n\n  onFavourite (status) {\n    if (status.get('favourited')) {\n      dispatch(unfavourite(status));\n    } else {\n      dispatch(favourite(status));\n    }\n  },\n\n  onPin (status) {\n    if (status.get('pinned')) {\n      dispatch(unpin(status));\n    } else {\n      dispatch(pin(status));\n    }\n  },\n\n  onEmbed (status) {\n    dispatch(openModal('EMBED', {\n      url: status.get('url'),\n      onError: error => dispatch(showAlertForError(error)),\n    }));\n  },\n\n  onDelete (status) {\n    if (!deleteModal) {\n      dispatch(deleteStatus(status.get('id')));\n    } else {\n      dispatch(openModal('CONFIRM', {\n        message: intl.formatMessage(messages.deleteMessage),\n        confirm: intl.formatMessage(messages.deleteConfirm),\n        onConfirm: () => dispatch(deleteStatus(status.get('id'))),\n      }));\n    }\n  },\n\n  onDirect (account, router) {\n    dispatch(directCompose(account, router));\n  },\n\n  onMention (account, router) {\n    dispatch(mentionCompose(account, router));\n  },\n\n  onOpenMedia (media, index) {\n    dispatch(openModal('MEDIA', { media, index }));\n  },\n\n  onOpenVideo (media, time) {\n    dispatch(openModal('VIDEO', { media, time }));\n  },\n\n  onBlock (account) {\n    dispatch(openModal('CONFIRM', {\n      message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n      confirm: intl.formatMessage(messages.blockConfirm),\n      onConfirm: () => dispatch(blockAccount(account.get('id'))),\n    }));\n  },\n\n  onReport (status) {\n    dispatch(initReport(status.get('account'), status));\n  },\n\n  onMute (account) {\n    dispatch(initMuteModal(account));\n  },\n\n  onMuteConversation (status) {\n    if (status.get('muted')) {\n      dispatch(unmuteStatus(status.get('id')));\n    } else {\n      dispatch(muteStatus(status.get('id')));\n    }\n  },\n\n  onToggleHidden (status) {\n    if (status.get('hidden')) {\n      dispatch(revealStatus(status.get('id')));\n    } else {\n      dispatch(hideStatus(status.get('id')));\n    }\n  },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport CharacterCounter from './character_counter';\nimport Button from '../../../components/button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport ReplyIndicatorContainer from '../containers/reply_indicator_container';\nimport AutosuggestTextarea from '../../../components/autosuggest_textarea';\nimport UploadButtonContainer from '../containers/upload_button_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport Collapsable from '../../../components/collapsable';\nimport SpoilerButtonContainer from '../containers/spoiler_button_container';\nimport PrivacyDropdownContainer from '../containers/privacy_dropdown_container';\nimport SensitiveButtonContainer from '../containers/sensitive_button_container';\nimport EmojiPickerDropdown from '../containers/emoji_picker_dropdown_container';\nimport UploadFormContainer from '../containers/upload_form_container';\nimport WarningContainer from '../containers/warning_container';\nimport { isMobile } from '../../../is_mobile';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { length } from 'stringz';\nimport { countableText } from '../util/counter';\nimport { charLimit } from \"../../../initial_state\"\n\nconst allowedAroundShortCode = '><\\u0085\\u0020\\u00a0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029\\u0009\\u000a\\u000b\\u000c\\u000d';\n\nconst messages = defineMessages({\n  placeholder: { id: 'compose_form.placeholder', defaultMessage: 'What is on your mind?' },\n  spoiler_placeholder: { id: 'compose_form.spoiler_placeholder', defaultMessage: 'Write your warning here' },\n  publish: { id: 'compose_form.publish', defaultMessage: 'Toot' },\n  publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },\n});\n\n@injectIntl\nexport default class ComposeForm extends ImmutablePureComponent {\n\n  static propTypes = {\n    intl: PropTypes.object.isRequired,\n    text: PropTypes.string.isRequired,\n    suggestion_token: PropTypes.string,\n    suggestions: ImmutablePropTypes.list,\n    spoiler: PropTypes.bool,\n    privacy: PropTypes.string,\n    spoiler_text: PropTypes.string,\n    focusDate: PropTypes.instanceOf(Date),\n    caretPosition: PropTypes.number,\n    preselectDate: PropTypes.instanceOf(Date),\n    is_submitting: PropTypes.bool,\n    is_uploading: PropTypes.bool,\n    onChange: PropTypes.func.isRequired,\n    onSubmit: PropTypes.func.isRequired,\n    onClearSuggestions: PropTypes.func.isRequired,\n    onFetchSuggestions: PropTypes.func.isRequired,\n    onSuggestionSelected: PropTypes.func.isRequired,\n    onChangeSpoilerText: PropTypes.func.isRequired,\n    onPaste: PropTypes.func.isRequired,\n    onPickEmoji: PropTypes.func.isRequired,\n    showSearch: PropTypes.bool,\n    anyMedia: PropTypes.bool,\n  };\n\n  static defaultProps = {\n    showSearch: false,\n  };\n\n  handleChange = (e) => {\n    this.props.onChange(e.target.value);\n  }\n\n  handleKeyDown = (e) => {\n    if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n      this.handleSubmit();\n    }\n  }\n\n  handleSubmit = () => {\n    if (this.props.text !== this.autosuggestTextarea.textarea.value) {\n      // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n      // Update the state to match the current text\n      this.props.onChange(this.autosuggestTextarea.textarea.value);\n    }\n\n    // Submit disabled:\n    const { is_submitting, is_uploading, anyMedia } = this.props;\n    const fulltext = [this.props.spoiler_text, countableText(this.props.text)].join('');\n\n    if (is_submitting || is_uploading || length(fulltext) > charLimit || (fulltext.length !== 0 && fulltext.trim().length === 0 && !anyMedia)) {\n      return;\n    }\n\n    this.props.onSubmit();\n  }\n\n  onSuggestionsClearRequested = () => {\n    this.props.onClearSuggestions();\n  }\n\n  onSuggestionsFetchRequested = (token) => {\n    this.props.onFetchSuggestions(token);\n  }\n\n  onSuggestionSelected = (tokenStart, token, value) => {\n    this.props.onSuggestionSelected(tokenStart, token, value);\n  }\n\n  handleChangeSpoilerText = (e) => {\n    this.props.onChangeSpoilerText(e.target.value);\n  }\n\n  componentDidUpdate (prevProps) {\n    // This statement does several things:\n    // - If we're beginning a reply, and,\n    //     - Replying to zero or one users, places the cursor at the end of the textbox.\n    //     - Replying to more than one user, selects any usernames past the first;\n    //       this provides a convenient shortcut to drop everyone else from the conversation.\n    if (this.props.focusDate !== prevProps.focusDate) {\n      let selectionEnd, selectionStart;\n\n      if (this.props.preselectDate !== prevProps.preselectDate) {\n        selectionEnd   = this.props.text.length;\n        selectionStart = this.props.text.search(/\\s/) + 1;\n      } else if (typeof this.props.caretPosition === 'number') {\n        selectionStart = this.props.caretPosition;\n        selectionEnd   = this.props.caretPosition;\n      } else {\n        selectionEnd   = this.props.text.length;\n        selectionStart = selectionEnd;\n      }\n\n      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n      this.autosuggestTextarea.textarea.focus();\n    } else if(prevProps.is_submitting && !this.props.is_submitting) {\n      this.autosuggestTextarea.textarea.focus();\n    }\n  }\n\n  setAutosuggestTextarea = (c) => {\n    this.autosuggestTextarea = c;\n  }\n\n  handleEmojiPick = (data) => {\n    const { text }     = this.props;\n    const position     = this.autosuggestTextarea.textarea.selectionStart;\n    const needsSpace   = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]);\n\n    this.props.onPickEmoji(position, data, needsSpace);\n  }\n\n  render () {\n    const { intl, onPaste, showSearch, anyMedia } = this.props;\n    const disabled = this.props.is_submitting;\n    const text     = [this.props.spoiler_text, countableText(this.props.text)].join('');\n    const disabledButton = disabled || this.props.is_uploading || length(text) > charLimit || (text.length !== 0 && text.trim().length === 0 && !anyMedia);\n    let publishText = '';\n\n    if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n      publishText = <span className='compose-form__publish-private'><i className='fa fa-lock' /> {intl.formatMessage(messages.publish)}</span>;\n    } else {\n      publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n    }\n\n    return (\n      <div className='compose-form'>\n        <WarningContainer />\n\n        <Collapsable isVisible={this.props.spoiler} fullHeight={50}>\n          <div className='spoiler-input'>\n            <label>\n              <span style={{ display: 'none' }}>{intl.formatMessage(messages.spoiler_placeholder)}</span>\n              <input placeholder={intl.formatMessage(messages.spoiler_placeholder)} value={this.props.spoiler_text} onChange={this.handleChangeSpoilerText} onKeyDown={this.handleKeyDown} type='text' className='spoiler-input__input'  id='cw-spoiler-input' />\n            </label>\n          </div>\n        </Collapsable>\n\n        <ReplyIndicatorContainer />\n\n        <div className='compose-form__autosuggest-wrapper'>\n          <AutosuggestTextarea\n            ref={this.setAutosuggestTextarea}\n            placeholder={intl.formatMessage(messages.placeholder)}\n            disabled={disabled}\n            value={this.props.text}\n            onChange={this.handleChange}\n            suggestions={this.props.suggestions}\n            onKeyDown={this.handleKeyDown}\n            onSuggestionsFetchRequested={this.onSuggestionsFetchRequested}\n            onSuggestionsClearRequested={this.onSuggestionsClearRequested}\n            onSuggestionSelected={this.onSuggestionSelected}\n            onPaste={onPaste}\n            autoFocus={!showSearch && !isMobile(window.innerWidth)}\n          />\n\n          <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} />\n        </div>\n\n        <div className='compose-form__modifiers'>\n          <UploadFormContainer />\n        </div>\n\n        <div className='compose-form__buttons-wrapper'>\n          <div className='compose-form__buttons'>\n            <UploadButtonContainer />\n            <PrivacyDropdownContainer />\n            <SensitiveButtonContainer />\n            <SpoilerButtonContainer />\n          </div>\n          <div className='character-counter__wrapper'><CharacterCounter max={charLimit} text={text} /></div>\n        </div>\n\n        <div className='compose-form__publish'>\n          <div className='compose-form__publish-button-wrapper'><Button text={publishText} onClick={this.handleSubmit} disabled={disabledButton} block /></div>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/compose_form.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { length } from 'stringz';\n\nexport default class CharacterCounter extends React.PureComponent {\n\n  static propTypes = {\n    text: PropTypes.string.isRequired,\n    max: PropTypes.number.isRequired,\n  };\n\n  checkRemainingText (diff) {\n    if (diff < 0) {\n      return <span className='character-counter character-counter--over'>{diff}</span>;\n    }\n\n    return <span className='character-counter'>{diff}</span>;\n  }\n\n  render () {\n    const diff = this.props.max - length(this.props.text);\n    return this.checkRemainingText(diff);\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/character_counter.js","import { connect } from 'react-redux';\nimport { cancelReplyCompose } from '../../../actions/compose';\nimport { makeGetStatus } from '../../../selectors';\nimport ReplyIndicator from '../components/reply_indicator';\n\nconst makeMapStateToProps = () => {\n  const getStatus = makeGetStatus();\n\n  const mapStateToProps = state => ({\n    status: getStatus(state, state.getIn(['compose', 'in_reply_to'])),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n\n  onCancel () {\n    dispatch(cancelReplyCompose());\n  },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(ReplyIndicator);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport DisplayName from '../../../components/display_name';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { isRtl } from '../../../rtl';\n\nconst messages = defineMessages({\n  cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },\n});\n\n@injectIntl\nexport default class ReplyIndicator extends ImmutablePureComponent {\n\n  static contextTypes = {\n    router: PropTypes.object,\n  };\n\n  static propTypes = {\n    status: ImmutablePropTypes.map,\n    onCancel: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  handleClick = () => {\n    this.props.onCancel();\n  }\n\n  handleAccountClick = (e) => {\n    if (e.button === 0) {\n      e.preventDefault();\n      this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n    }\n  }\n\n  render () {\n    const { status, intl } = this.props;\n\n    if (!status) {\n      return null;\n    }\n\n    const content = { __html: status.get('contentHtml') };\n    const style   = {\n      direction: isRtl(status.get('search_index')) ? 'rtl' : 'ltr',\n    };\n\n    return (\n      <div className='reply-indicator'>\n        <div className='reply-indicator__header'>\n          <div className='reply-indicator__cancel'><IconButton title={intl.formatMessage(messages.cancel)} icon='times' onClick={this.handleClick} inverted /></div>\n\n          <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='reply-indicator__display-name'>\n            <div className='reply-indicator__display-avatar'><Avatar account={status.get('account')} size={24} /></div>\n            <DisplayName account={status.get('account')} />\n          </a>\n        </div>\n\n        <div className='reply-indicator__content' style={style} dangerouslySetInnerHTML={content} />\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/reply_indicator.js","import React from 'react';\nimport AutosuggestAccountContainer from '../features/compose/containers/autosuggest_account_container';\nimport AutosuggestEmoji from './autosuggest_emoji';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { isRtl } from '../rtl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Textarea from 'react-textarea-autosize';\nimport classNames from 'classnames';\n\nconst textAtCursorMatchesToken = (str, caretPosition) => {\n  let word;\n\n  let left  = str.slice(0, caretPosition).search(/\\S+$/);\n  let right = str.slice(caretPosition).search(/\\s/);\n\n  if (right < 0) {\n    word = str.slice(left);\n  } else {\n    word = str.slice(left, right + caretPosition);\n  }\n\n  if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n    return [null, null];\n  }\n\n  word = word.trim().toLowerCase();\n\n  if (word.length > 0) {\n    return [left + 1, word];\n  } else {\n    return [null, null];\n  }\n};\n\nexport default class AutosuggestTextarea extends ImmutablePureComponent {\n\n  static propTypes = {\n    value: PropTypes.string,\n    suggestions: ImmutablePropTypes.list,\n    disabled: PropTypes.bool,\n    placeholder: PropTypes.string,\n    onSuggestionSelected: PropTypes.func.isRequired,\n    onSuggestionsClearRequested: PropTypes.func.isRequired,\n    onSuggestionsFetchRequested: PropTypes.func.isRequired,\n    onChange: PropTypes.func.isRequired,\n    onKeyUp: PropTypes.func,\n    onKeyDown: PropTypes.func,\n    onPaste: PropTypes.func.isRequired,\n    autoFocus: PropTypes.bool,\n  };\n\n  static defaultProps = {\n    autoFocus: true,\n  };\n\n  state = {\n    suggestionsHidden: false,\n    selectedSuggestion: 0,\n    lastToken: null,\n    tokenStart: 0,\n  };\n\n  onChange = (e) => {\n    const [ tokenStart, token ] = textAtCursorMatchesToken(e.target.value, e.target.selectionStart);\n\n    if (token !== null && this.state.lastToken !== token) {\n      this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });\n      this.props.onSuggestionsFetchRequested(token);\n    } else if (token === null) {\n      this.setState({ lastToken: null });\n      this.props.onSuggestionsClearRequested();\n    }\n\n    this.props.onChange(e);\n  }\n\n  onKeyDown = (e) => {\n    const { suggestions, disabled } = this.props;\n    const { selectedSuggestion, suggestionsHidden } = this.state;\n\n    if (disabled) {\n      e.preventDefault();\n      return;\n    }\n\n    if (e.which === 229 || e.isComposing) {\n      // Ignore key events during text composition\n      // e.key may be a name of the physical key even in this case (e.x. Safari / Chrome on Mac)\n      return;\n    }\n\n    switch(e.key) {\n    case 'Escape':\n      if (suggestions.size === 0 || suggestionsHidden) {\n        document.querySelector('.ui').parentElement.focus();\n      } else {\n        e.preventDefault();\n        this.setState({ suggestionsHidden: true });\n      }\n\n      break;\n    case 'ArrowDown':\n      if (suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n      }\n\n      break;\n    case 'ArrowUp':\n      if (suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n      }\n\n      break;\n    case 'Enter':\n    case 'Tab':\n      // Select suggestion\n      if (this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        e.stopPropagation();\n        this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestions.get(selectedSuggestion));\n      }\n\n      break;\n    }\n\n    if (e.defaultPrevented || !this.props.onKeyDown) {\n      return;\n    }\n\n    this.props.onKeyDown(e);\n  }\n\n  onBlur = () => {\n    this.setState({ suggestionsHidden: true });\n  }\n\n  onSuggestionClick = (e) => {\n    const suggestion = this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n    e.preventDefault();\n    this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);\n    this.textarea.focus();\n  }\n\n  componentWillReceiveProps (nextProps) {\n    if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n      this.setState({ suggestionsHidden: false });\n    }\n  }\n\n  setTextarea = (c) => {\n    this.textarea = c;\n  }\n\n  onPaste = (e) => {\n    if (e.clipboardData && e.clipboardData.files.length === 1) {\n      this.props.onPaste(e.clipboardData.files);\n      e.preventDefault();\n    }\n  }\n\n  renderSuggestion = (suggestion, i) => {\n    const { selectedSuggestion } = this.state;\n    let inner, key;\n\n    if (typeof suggestion === 'object') {\n      inner = <AutosuggestEmoji emoji={suggestion} />;\n      key   = suggestion.id;\n    } else if (suggestion[0] === '#') {\n      inner = suggestion;\n      key   = suggestion;\n    } else {\n      inner = <AutosuggestAccountContainer id={suggestion} />;\n      key   = suggestion;\n    }\n\n    return (\n      <div role='button' tabIndex='0' key={key} data-index={i} className={classNames('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion })} onMouseDown={this.onSuggestionClick}>\n        {inner}\n      </div>\n    );\n  }\n\n  render () {\n    const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus } = this.props;\n    const { suggestionsHidden } = this.state;\n    const style = { direction: 'ltr' };\n\n    if (isRtl(value)) {\n      style.direction = 'rtl';\n    }\n\n    return (\n      <div className='autosuggest-textarea'>\n        <label>\n          <span style={{ display: 'none' }}>{placeholder}</span>\n\n          <Textarea\n            inputRef={this.setTextarea}\n            className='autosuggest-textarea__textarea'\n            disabled={disabled}\n            placeholder={placeholder}\n            autoFocus={autoFocus}\n            value={value}\n            onChange={this.onChange}\n            onKeyDown={this.onKeyDown}\n            onKeyUp={onKeyUp}\n            onBlur={this.onBlur}\n            onPaste={this.onPaste}\n            style={style}\n            aria-autocomplete='list'\n          />\n        </label>\n\n        <div className={`autosuggest-textarea__suggestions ${suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible'}`}>\n          {suggestions.map(this.renderSuggestion)}\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_textarea.js","import { connect } from 'react-redux';\nimport AutosuggestAccount from '../components/autosuggest_account';\nimport { makeGetAccount } from '../../../selectors';\n\nconst makeMapStateToProps = () => {\n  const getAccount = makeGetAccount();\n\n  const mapStateToProps = (state, { id }) => ({\n    account: getAccount(state, id),\n  });\n\n  return mapStateToProps;\n};\n\nexport default connect(makeMapStateToProps)(AutosuggestAccount);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","import React from 'react';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class AutosuggestAccount extends ImmutablePureComponent {\n\n  static propTypes = {\n    account: ImmutablePropTypes.map.isRequired,\n  };\n\n  render () {\n    const { account } = this.props;\n\n    return (\n      <div className='autosuggest-account'>\n        <div className='autosuggest-account-icon'><Avatar account={account} size={18} /></div>\n        <DisplayName account={account} />\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/autosuggest_account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport unicodeMapping from '../features/emoji/emoji_unicode_mapping_light';\n\nconst assetHost = process.env.CDN_HOST || '';\n\nexport default class AutosuggestEmoji extends React.PureComponent {\n\n  static propTypes = {\n    emoji: PropTypes.object.isRequired,\n  };\n\n  render () {\n    const { emoji } = this.props;\n    let url;\n\n    if (emoji.custom) {\n      url = emoji.imageUrl;\n    } else {\n      const mapping = unicodeMapping[emoji.native] || unicodeMapping[emoji.native.replace(/\\uFE0F$/, '')];\n\n      if (!mapping) {\n        return null;\n      }\n\n      url = `${assetHost}/emoji/${mapping.filename}.svg`;\n    }\n\n    return (\n      <div className='autosuggest-emoji'>\n        <img\n          className='emojione'\n          src={url}\n          alt={emoji.native || emoji.colons}\n        />\n\n        {emoji.colons}\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_emoji.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n  subClass.prototype = Object.create(superClass.prototype);\n  subClass.prototype.constructor = subClass;\n  subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n\n  return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n  'min-height': '0',\n  'max-height': 'none',\n  height: '0',\n  visibility: 'hidden',\n  overflow: 'hidden',\n  position: 'absolute',\n  'z-index': '-1000',\n  top: '0',\n  right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (minRows === void 0) {\n    minRows = null;\n  }\n\n  if (maxRows === void 0) {\n    maxRows = null;\n  }\n\n  if (hiddenTextarea.parentNode === null) {\n    document.body.appendChild(hiddenTextarea);\n  } // Copy all CSS properties that have an impact on the height of the content in\n  // the textbox\n\n\n  var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n  if (nodeStyling === null) {\n    return null;\n  }\n\n  var paddingSize = nodeStyling.paddingSize,\n      borderSize = nodeStyling.borderSize,\n      boxSizing = nodeStyling.boxSizing,\n      sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n  // text-lines will not calculated properly as the shadow will technically be\n  // narrower for content\n\n  Object.keys(sizingStyle).forEach(function (key) {\n    hiddenTextarea.style[key] = sizingStyle[key];\n  });\n  Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n    hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n  });\n  hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n  var minHeight = -Infinity;\n  var maxHeight = Infinity;\n  var height = hiddenTextarea.scrollHeight;\n\n  if (boxSizing === 'border-box') {\n    // border-box: add border, since height = content + padding + border\n    height = height + borderSize;\n  } else if (boxSizing === 'content-box') {\n    // remove padding, since height = content\n    height = height - paddingSize;\n  } // measure height of a textarea with a single row\n\n\n  hiddenTextarea.value = 'x';\n  var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n  if (minRows !== null || maxRows !== null) {\n    if (minRows !== null) {\n      minHeight = singleRowHeight * minRows;\n\n      if (boxSizing === 'border-box') {\n        minHeight = minHeight + paddingSize + borderSize;\n      }\n\n      height = Math.max(minHeight, height);\n    }\n\n    if (maxRows !== null) {\n      maxHeight = singleRowHeight * maxRows;\n\n      if (boxSizing === 'border-box') {\n        maxHeight = maxHeight + paddingSize + borderSize;\n      }\n\n      height = Math.min(maxHeight, height);\n    }\n  }\n\n  var rowCount = Math.floor(height / singleRowHeight);\n  return {\n    height: height,\n    minHeight: minHeight,\n    maxHeight: maxHeight,\n    rowCount: rowCount\n  };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (useCache && computedStyleCache[uid]) {\n    return computedStyleCache[uid];\n  }\n\n  var style = window.getComputedStyle(node);\n\n  if (style === null) {\n    return null;\n  }\n\n  var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n    obj[name] = style.getPropertyValue(name);\n    return obj;\n  }, {});\n  var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n  // so we need to add manually padding and border widths\n\n  if (isIE && boxSizing === 'border-box') {\n    sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n  }\n\n  var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n  var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n  var nodeInfo = {\n    sizingStyle: sizingStyle,\n    paddingSize: paddingSize,\n    borderSize: borderSize,\n    boxSizing: boxSizing\n  };\n\n  if (useCache) {\n    computedStyleCache[uid] = nodeInfo;\n  }\n\n  return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n  return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n  if (seed === void 0) {\n    seed = 0;\n  }\n\n  return function () {\n    return ++seed;\n  };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? process.env.NODE_ENV !== 'development' ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n  _inheritsLoose(TextareaAutosize, _React$Component);\n\n  function TextareaAutosize(props) {\n    var _this;\n\n    _this = _React$Component.call(this, props) || this;\n    _this._resizeLock = false;\n\n    _this._onRootDOMNode = function (node) {\n      _this._rootDOMNode = node;\n\n      if (_this.props.inputRef) {\n        _this.props.inputRef(node);\n      }\n    };\n\n    _this._onChange = function (event) {\n      if (!_this._controlled) {\n        _this._resizeComponent();\n      }\n\n      _this.props.onChange(event);\n    };\n\n    _this._resizeComponent = function (callback) {\n      if (callback === void 0) {\n        callback = noop;\n      }\n\n      if (typeof _this._rootDOMNode === 'undefined') {\n        callback();\n        return;\n      }\n\n      var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n      if (nodeHeight === null) {\n        callback();\n        return;\n      }\n\n      var height = nodeHeight.height,\n          minHeight = nodeHeight.minHeight,\n          maxHeight = nodeHeight.maxHeight,\n          rowCount = nodeHeight.rowCount;\n      _this.rowCount = rowCount;\n\n      if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n        _this.setState({\n          height: height,\n          minHeight: minHeight,\n          maxHeight: maxHeight\n        }, callback);\n\n        return;\n      }\n\n      callback();\n    };\n\n    _this.state = {\n      height: props.style && props.style.height || 0,\n      minHeight: -Infinity,\n      maxHeight: Infinity\n    };\n    _this._uid = uid();\n    _this._controlled = typeof props.value === 'string';\n    return _this;\n  }\n\n  var _proto = TextareaAutosize.prototype;\n\n  _proto.render = function render() {\n    var _props = this.props,\n        _minRows = _props.minRows,\n        _maxRows = _props.maxRows,\n        _onHeightChange = _props.onHeightChange,\n        _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n        _inputRef = _props.inputRef,\n        props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n    props.style = _extends({}, props.style, {\n      height: this.state.height\n    });\n    var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n    if (maxHeight < this.state.height) {\n      props.style.overflow = 'hidden';\n    }\n\n    return React.createElement(\"textarea\", _extends({}, props, {\n      onChange: this._onChange,\n      ref: this._onRootDOMNode\n    }));\n  };\n\n  _proto.componentDidMount = function componentDidMount() {\n    var _this2 = this;\n\n    this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n    // causing competing rerenders (due to setState in the listener) in React.\n    // More can be found here - facebook/react#6324\n\n\n    this._resizeListener = function () {\n      if (_this2._resizeLock) {\n        return;\n      }\n\n      _this2._resizeLock = true;\n\n      _this2._resizeComponent(function () {\n        return _this2._resizeLock = false;\n      });\n    };\n\n    window.addEventListener('resize', this._resizeListener);\n  };\n\n  _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n    var _this3 = this;\n\n    this._clearNextFrame();\n\n    this._onNextFrameActionId = onNextFrame(function () {\n      return _this3._resizeComponent();\n    });\n  };\n\n  _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n    if (this.state.height !== prevState.height) {\n      this.props.onHeightChange(this.state.height, this);\n    }\n  };\n\n  _proto.componentWillUnmount = function componentWillUnmount() {\n    this._clearNextFrame();\n\n    window.removeEventListener('resize', this._resizeListener);\n    purgeCache(this._uid);\n  };\n\n  _proto._clearNextFrame = function _clearNextFrame() {\n    clearNextFrameAction(this._onNextFrameActionId);\n  };\n\n  return TextareaAutosize;\n}(React.Component);\n\nTextareaAutosize.propTypes = {\n  value: PropTypes.string,\n  onChange: PropTypes.func,\n  onHeightChange: PropTypes.func,\n  useCacheForDOMMeasurements: PropTypes.bool,\n  minRows: PropTypes.number,\n  maxRows: PropTypes.number,\n  inputRef: PropTypes.func\n};\nTextareaAutosize.defaultProps = {\n  onChange: noop,\n  onHeightChange: noop,\n  useCacheForDOMMeasurements: false\n};\n\nexport default TextareaAutosize;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-textarea-autosize/es/index.js","import { connect } from 'react-redux';\nimport UploadButton from '../components/upload_button';\nimport { uploadCompose } from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n  disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(m => m.get('type') === 'video')),\n  resetFileKey: state.getIn(['compose', 'resetFileKey']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onSelectFile (files) {\n    dispatch(uploadCompose(files));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(UploadButton);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_button_container.js","import React from 'react';\nimport IconButton from '../../../components/icon_button';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nconst messages = defineMessages({\n  upload: { id: 'upload_button.label', defaultMessage: 'Add media' },\n});\n\nconst makeMapStateToProps = () => {\n  const mapStateToProps = state => ({\n    acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types']),\n  });\n\n  return mapStateToProps;\n};\n\nconst iconStyle = {\n  height: null,\n  lineHeight: '27px',\n};\n\n@connect(makeMapStateToProps)\n@injectIntl\nexport default class UploadButton extends ImmutablePureComponent {\n\n  static propTypes = {\n    disabled: PropTypes.bool,\n    onSelectFile: PropTypes.func.isRequired,\n    style: PropTypes.object,\n    resetFileKey: PropTypes.number,\n    acceptContentTypes: ImmutablePropTypes.listOf(PropTypes.string).isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  handleChange = (e) => {\n    if (e.target.files.length > 0) {\n      this.props.onSelectFile(e.target.files);\n    }\n  }\n\n  handleClick = () => {\n    this.fileElement.click();\n  }\n\n  setRef = (c) => {\n    this.fileElement = c;\n  }\n\n  render () {\n\n    const { intl, resetFileKey, disabled, acceptContentTypes } = this.props;\n\n    return (\n      <div className='compose-form__upload-button'>\n        <IconButton icon='camera' title={intl.formatMessage(messages.upload)} disabled={disabled} onClick={this.handleClick} className='compose-form__upload-button-icon' size={18} inverted style={iconStyle} />\n        <label>\n          <span style={{ display: 'none' }}>{intl.formatMessage(messages.upload)}</span>\n          <input\n            key={resetFileKey}\n            ref={this.setRef}\n            type='file'\n            multiple={false}\n            accept={acceptContentTypes.toArray().join(',')}\n            onChange={this.handleChange}\n            disabled={disabled}\n            style={{ display: 'none' }}\n          />\n        </label>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_button.js","import React from 'react';\nimport Motion from '../features/ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport PropTypes from 'prop-types';\n\nconst Collapsable = ({ fullHeight, isVisible, children }) => (\n  <Motion defaultStyle={{ opacity: !isVisible ? 0 : 100, height: isVisible ? fullHeight : 0 }} style={{ opacity: spring(!isVisible ? 0 : 100), height: spring(!isVisible ? 0 : fullHeight) }}>\n    {({ opacity, height }) => (\n      <div style={{ height: `${height}px`, overflow: 'hidden', opacity: opacity / 100, display: Math.floor(opacity) === 0 ? 'none' : 'block' }}>\n        {children}\n      </div>\n    )}\n  </Motion>\n);\n\nCollapsable.propTypes = {\n  fullHeight: PropTypes.number.isRequired,\n  isVisible: PropTypes.bool.isRequired,\n  children: PropTypes.node.isRequired,\n};\n\nexport default Collapsable;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/collapsable.js","import { connect } from 'react-redux';\nimport TextIconButton from '../components/text_icon_button';\nimport { changeComposeSpoilerness } from '../../../actions/compose';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n  marked: { id: 'compose_form.spoiler.marked', defaultMessage: 'Text is hidden behind warning' },\n  unmarked: { id: 'compose_form.spoiler.unmarked', defaultMessage: 'Text is not hidden' },\n});\n\nconst mapStateToProps = (state, { intl }) => ({\n  label: 'CW',\n  title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n  active: state.getIn(['compose', 'spoiler']),\n  ariaControls: 'cw-spoiler-input',\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onClick () {\n    dispatch(changeComposeSpoilerness());\n  },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(TextIconButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport default class TextIconButton extends React.PureComponent {\n\n  static propTypes = {\n    label: PropTypes.string.isRequired,\n    title: PropTypes.string,\n    active: PropTypes.bool,\n    onClick: PropTypes.func.isRequired,\n    ariaControls: PropTypes.string,\n  };\n\n  handleClick = (e) => {\n    e.preventDefault();\n    this.props.onClick();\n  }\n\n  render () {\n    const { label, title, active, ariaControls } = this.props;\n\n    return (\n      <button title={title} aria-label={title} className={`text-icon-button ${active ? 'active' : ''}`} aria-expanded={active} onClick={this.handleClick} aria-controls={ariaControls}>\n        {label}\n      </button>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/text_icon_button.js","import { connect } from 'react-redux';\nimport PrivacyDropdown from '../components/privacy_dropdown';\nimport { changeComposeVisibility } from '../../../actions/compose';\nimport { openModal, closeModal } from '../../../actions/modal';\nimport { isUserTouching } from '../../../is_mobile';\n\nconst mapStateToProps = state => ({\n  isModalOpen: state.get('modal').modalType === 'ACTIONS',\n  value: state.getIn(['compose', 'privacy']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onChange (value) {\n    dispatch(changeComposeVisibility(value));\n  },\n\n  isUserTouching,\n  onModalOpen: props => dispatch(openModal('ACTIONS', props)),\n  onModalClose: () => dispatch(closeModal()),\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PrivacyDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport detectPassiveEvents from 'detect-passive-events';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n  public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },\n  public_long: { id: 'privacy.public.long', defaultMessage: 'Post to public timelines' },\n  unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },\n  unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Do not show in public timelines' },\n  private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },\n  private_long: { id: 'privacy.private.long', defaultMessage: 'Post to followers only' },\n  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },\n  direct_long: { id: 'privacy.direct.long', defaultMessage: 'Post to mentioned users only' },\n  change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' },\n});\n\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nclass PrivacyDropdownMenu extends React.PureComponent {\n\n  static propTypes = {\n    style: PropTypes.object,\n    items: PropTypes.array.isRequired,\n    value: PropTypes.string.isRequired,\n    onClose: PropTypes.func.isRequired,\n    onChange: PropTypes.func.isRequired,\n  };\n\n  state = {\n    mounted: false,\n  };\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  handleKeyDown = e => {\n    const { items } = this.props;\n    const value = e.currentTarget.getAttribute('data-index');\n    const index = items.findIndex(item => {\n      return (item.value === value);\n    });\n    let element;\n\n    switch(e.key) {\n    case 'Escape':\n      this.props.onClose();\n      break;\n    case 'Enter':\n      this.handleClick(e);\n      break;\n    case 'ArrowDown':\n      element = this.node.childNodes[index + 1];\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'ArrowUp':\n      element = this.node.childNodes[index - 1];\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'Home':\n      element = this.node.firstChild;\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'End':\n      element = this.node.lastChild;\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    }\n  }\n\n  handleClick = e => {\n    const value = e.currentTarget.getAttribute('data-index');\n\n    e.preventDefault();\n\n    this.props.onClose();\n    this.props.onChange(value);\n  }\n\n  componentDidMount () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n    if (this.focusedItem) this.focusedItem.focus();\n    this.setState({ mounted: true });\n  }\n\n  componentWillUnmount () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  setFocusRef = c => {\n    this.focusedItem = c;\n  }\n\n  render () {\n    const { mounted } = this.state;\n    const { style, items, value } = this.props;\n\n    return (\n      <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n        {({ opacity, scaleX, scaleY }) => (\n          // It should not be transformed when mounting because the resulting\n          // size will be used to determine the coordinate of the menu by\n          // react-overlays\n          <div className='privacy-dropdown__dropdown' style={{ ...style, opacity: opacity, transform: mounted ? `scale(${scaleX}, ${scaleY})` : null }} role='listbox' ref={this.setRef}>\n            {items.map(item => (\n              <div role='option' tabIndex='0' key={item.value} data-index={item.value} onKeyDown={this.handleKeyDown} onClick={this.handleClick} className={classNames('privacy-dropdown__option', { active: item.value === value })} aria-selected={item.value === value} ref={item.value === value ? this.setFocusRef : null}>\n                <div className='privacy-dropdown__option__icon'>\n                  <i className={`fa fa-fw fa-${item.icon}`} />\n                </div>\n\n                <div className='privacy-dropdown__option__content'>\n                  <strong>{item.text}</strong>\n                  {item.meta}\n                </div>\n              </div>\n            ))}\n          </div>\n        )}\n      </Motion>\n    );\n  }\n\n}\n\n@injectIntl\nexport default class PrivacyDropdown extends React.PureComponent {\n\n  static propTypes = {\n    isUserTouching: PropTypes.func,\n    isModalOpen: PropTypes.bool.isRequired,\n    onModalOpen: PropTypes.func,\n    onModalClose: PropTypes.func,\n    value: PropTypes.string.isRequired,\n    onChange: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  state = {\n    open: false,\n    placement: null,\n  };\n\n  handleToggle = ({ target }) => {\n    if (this.props.isUserTouching()) {\n      if (this.state.open) {\n        this.props.onModalClose();\n      } else {\n        this.props.onModalOpen({\n          actions: this.options.map(option => ({ ...option, active: option.value === this.props.value })),\n          onClick: this.handleModalActionClick,\n        });\n      }\n    } else {\n      const { top } = target.getBoundingClientRect();\n      this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n      this.setState({ open: !this.state.open });\n    }\n  }\n\n  handleModalActionClick = (e) => {\n    e.preventDefault();\n\n    const { value } = this.options[e.currentTarget.getAttribute('data-index')];\n\n    this.props.onModalClose();\n    this.props.onChange(value);\n  }\n\n  handleKeyDown = e => {\n    switch(e.key) {\n    case 'Escape':\n      this.handleClose();\n      break;\n    }\n  }\n\n  handleClose = () => {\n    this.setState({ open: false });\n  }\n\n  handleChange = value => {\n    this.props.onChange(value);\n  }\n\n  componentWillMount () {\n    const { intl: { formatMessage } } = this.props;\n\n    this.options = [\n      { icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) },\n      { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) },\n      { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) },\n      { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },\n    ];\n  }\n\n  render () {\n    const { value, intl } = this.props;\n    const { open, placement } = this.state;\n\n    const valueOption = this.options.find(item => item.value === value);\n\n    return (\n      <div className={classNames('privacy-dropdown', { active: open })} onKeyDown={this.handleKeyDown}>\n        <div className={classNames('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })}>\n          <IconButton\n            className='privacy-dropdown__value-icon'\n            icon={valueOption.icon}\n            title={intl.formatMessage(messages.change_privacy)}\n            size={18}\n            expanded={open}\n            active={open}\n            inverted\n            onClick={this.handleToggle}\n            style={{ height: null, lineHeight: '27px' }}\n          />\n        </div>\n\n        <Overlay show={open} placement={placement} target={this}>\n          <PrivacyDropdownMenu\n            items={this.options}\n            value={value}\n            onClose={this.handleClose}\n            onChange={this.handleChange}\n          />\n        </Overlay>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport IconButton from '../../../components/icon_button';\nimport { changeComposeSensitivity } from '../../../actions/compose';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n  marked: { id: 'compose_form.sensitive.marked', defaultMessage: 'Media is marked as sensitive' },\n  unmarked: { id: 'compose_form.sensitive.unmarked', defaultMessage: 'Media is not marked as sensitive' },\n});\n\nconst mapStateToProps = state => ({\n  visible: state.getIn(['compose', 'media_attachments']).size > 0,\n  active: state.getIn(['compose', 'sensitive']),\n  disabled: state.getIn(['compose', 'spoiler']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onClick () {\n    dispatch(changeComposeSensitivity());\n  },\n\n});\n\nclass SensitiveButton extends React.PureComponent {\n\n  static propTypes = {\n    visible: PropTypes.bool,\n    active: PropTypes.bool,\n    disabled: PropTypes.bool,\n    onClick: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  render () {\n    const { visible, active, disabled, onClick, intl } = this.props;\n\n    return (\n      <Motion defaultStyle={{ scale: 0.87 }} style={{ scale: spring(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }}>\n        {({ scale }) => {\n          const icon = active ? 'eye-slash' : 'eye';\n          const className = classNames('compose-form__sensitive-button', {\n            'compose-form__sensitive-button--visible': visible,\n          });\n          return (\n            <div className={className} style={{ transform: `scale(${scale})` }}>\n              <IconButton\n                className='compose-form__sensitive-button__icon'\n                title={intl.formatMessage(active ? messages.marked : messages.unmarked)}\n                icon={icon}\n                onClick={onClick}\n                size={18}\n                active={active}\n                disabled={disabled}\n                style={{ lineHeight: null, height: null }}\n                inverted\n              />\n            </div>\n          );\n        }}\n      </Motion>\n    );\n  }\n\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(injectIntl(SensitiveButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","import { connect } from 'react-redux';\nimport EmojiPickerDropdown from '../components/emoji_picker_dropdown';\nimport { changeSetting } from '../../../actions/settings';\nimport { createSelector } from 'reselect';\nimport { Map as ImmutableMap } from 'immutable';\nimport { useEmoji } from '../../../actions/emojis';\n\nconst perLine = 8;\nconst lines   = 2;\n\nconst DEFAULTS = [\n  '+1',\n  'grinning',\n  'kissing_heart',\n  'heart_eyes',\n  'laughing',\n  'stuck_out_tongue_winking_eye',\n  'sweat_smile',\n  'joy',\n  'yum',\n  'disappointed',\n  'thinking_face',\n  'weary',\n  'sob',\n  'sunglasses',\n  'heart',\n  'ok_hand',\n];\n\nconst getFrequentlyUsedEmojis = createSelector([\n  state => state.getIn(['settings', 'frequentlyUsedEmojis'], ImmutableMap()),\n], emojiCounters => {\n  let emojis = emojiCounters\n    .keySeq()\n    .sort((a, b) => emojiCounters.get(a) - emojiCounters.get(b))\n    .reverse()\n    .slice(0, perLine * lines)\n    .toArray();\n\n  if (emojis.length < DEFAULTS.length) {\n    let uniqueDefaults = DEFAULTS.filter(emoji => !emojis.includes(emoji));\n    emojis = emojis.concat(uniqueDefaults.slice(0, DEFAULTS.length - emojis.length));\n  }\n\n  return emojis;\n});\n\nconst getCustomEmojis = createSelector([\n  state => state.get('custom_emojis'),\n], emojis => emojis.filter(e => e.get('visible_in_picker')).sort((a, b) => {\n  const aShort = a.get('shortcode').toLowerCase();\n  const bShort = b.get('shortcode').toLowerCase();\n\n  if (aShort < bShort) {\n    return -1;\n  } else if (aShort > bShort ) {\n    return 1;\n  } else {\n    return 0;\n  }\n}));\n\nconst mapStateToProps = state => ({\n  custom_emojis: getCustomEmojis(state),\n  skinTone: state.getIn(['settings', 'skinTone']),\n  frequentlyUsedEmojis: getFrequentlyUsedEmojis(state),\n});\n\nconst mapDispatchToProps = (dispatch, { onPickEmoji }) => ({\n  onSkinTone: skinTone => {\n    dispatch(changeSetting(['skinTone'], skinTone));\n  },\n\n  onPickEmoji: emoji => {\n    dispatch(useEmoji(emoji));\n\n    if (onPickEmoji) {\n      onPickEmoji(emoji);\n    }\n  },\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(EmojiPickerDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { EmojiPicker as EmojiPickerAsync } from '../../ui/util/async-components';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport detectPassiveEvents from 'detect-passive-events';\nimport { buildCustomEmojis } from '../../emoji/emoji';\n\nconst messages = defineMessages({\n  emoji: { id: 'emoji_button.label', defaultMessage: 'Insert emoji' },\n  emoji_search: { id: 'emoji_button.search', defaultMessage: 'Search...' },\n  emoji_not_found: { id: 'emoji_button.not_found', defaultMessage: 'No emojos!! (╯°□°)╯︵ ┻━┻' },\n  custom: { id: 'emoji_button.custom', defaultMessage: 'Custom' },\n  recent: { id: 'emoji_button.recent', defaultMessage: 'Frequently used' },\n  search_results: { id: 'emoji_button.search_results', defaultMessage: 'Search results' },\n  people: { id: 'emoji_button.people', defaultMessage: 'People' },\n  nature: { id: 'emoji_button.nature', defaultMessage: 'Nature' },\n  food: { id: 'emoji_button.food', defaultMessage: 'Food & Drink' },\n  activity: { id: 'emoji_button.activity', defaultMessage: 'Activity' },\n  travel: { id: 'emoji_button.travel', defaultMessage: 'Travel & Places' },\n  objects: { id: 'emoji_button.objects', defaultMessage: 'Objects' },\n  symbols: { id: 'emoji_button.symbols', defaultMessage: 'Symbols' },\n  flags: { id: 'emoji_button.flags', defaultMessage: 'Flags' },\n});\n\nconst assetHost = process.env.CDN_HOST || '';\nlet EmojiPicker, Emoji; // load asynchronously\n\nconst backgroundImageFn = () => `${assetHost}/emoji/sheet.png`;\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nconst categoriesSort = [\n  'recent',\n  'custom',\n  'people',\n  'nature',\n  'foods',\n  'activity',\n  'places',\n  'objects',\n  'symbols',\n  'flags',\n];\n\nclass ModifierPickerMenu extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    onSelect: PropTypes.func.isRequired,\n    onClose: PropTypes.func.isRequired,\n  };\n\n  handleClick = e => {\n    this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n  }\n\n  componentWillReceiveProps (nextProps) {\n    if (nextProps.active) {\n      this.attachListeners();\n    } else {\n      this.removeListeners();\n    }\n  }\n\n  componentWillUnmount () {\n    this.removeListeners();\n  }\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  attachListeners () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  removeListeners () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  render () {\n    const { active } = this.props;\n\n    return (\n      <div className='emoji-picker-dropdown__modifiers__menu' style={{ display: active ? 'block' : 'none' }} ref={this.setRef}>\n        <button onClick={this.handleClick} data-index={1}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={1} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={2}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={2} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={3}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={3} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={4}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={4} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={5}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={5} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={6}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={6} backgroundImageFn={backgroundImageFn} /></button>\n      </div>\n    );\n  }\n\n}\n\nclass ModifierPicker extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    modifier: PropTypes.number,\n    onChange: PropTypes.func,\n    onClose: PropTypes.func,\n    onOpen: PropTypes.func,\n  };\n\n  handleClick = () => {\n    if (this.props.active) {\n      this.props.onClose();\n    } else {\n      this.props.onOpen();\n    }\n  }\n\n  handleSelect = modifier => {\n    this.props.onChange(modifier);\n    this.props.onClose();\n  }\n\n  render () {\n    const { active, modifier } = this.props;\n\n    return (\n      <div className='emoji-picker-dropdown__modifiers'>\n        <Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={modifier} onClick={this.handleClick} backgroundImageFn={backgroundImageFn} />\n        <ModifierPickerMenu active={active} onSelect={this.handleSelect} onClose={this.props.onClose} />\n      </div>\n    );\n  }\n\n}\n\n@injectIntl\nclass EmojiPickerMenu extends React.PureComponent {\n\n  static propTypes = {\n    custom_emojis: ImmutablePropTypes.list,\n    frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n    loading: PropTypes.bool,\n    onClose: PropTypes.func.isRequired,\n    onPick: PropTypes.func.isRequired,\n    style: PropTypes.object,\n    placement: PropTypes.string,\n    arrowOffsetLeft: PropTypes.string,\n    arrowOffsetTop: PropTypes.string,\n    intl: PropTypes.object.isRequired,\n    skinTone: PropTypes.number.isRequired,\n    onSkinTone: PropTypes.func.isRequired,\n  };\n\n  static defaultProps = {\n    style: {},\n    loading: true,\n    frequentlyUsedEmojis: [],\n  };\n\n  state = {\n    modifierOpen: false,\n    placement: null,\n  };\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  componentDidMount () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  componentWillUnmount () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  getI18n = () => {\n    const { intl } = this.props;\n\n    return {\n      search: intl.formatMessage(messages.emoji_search),\n      notfound: intl.formatMessage(messages.emoji_not_found),\n      categories: {\n        search: intl.formatMessage(messages.search_results),\n        recent: intl.formatMessage(messages.recent),\n        people: intl.formatMessage(messages.people),\n        nature: intl.formatMessage(messages.nature),\n        foods: intl.formatMessage(messages.food),\n        activity: intl.formatMessage(messages.activity),\n        places: intl.formatMessage(messages.travel),\n        objects: intl.formatMessage(messages.objects),\n        symbols: intl.formatMessage(messages.symbols),\n        flags: intl.formatMessage(messages.flags),\n        custom: intl.formatMessage(messages.custom),\n      },\n    };\n  }\n\n  handleClick = emoji => {\n    if (!emoji.native) {\n      emoji.native = emoji.colons;\n    }\n\n    this.props.onClose();\n    this.props.onPick(emoji);\n  }\n\n  handleModifierOpen = () => {\n    this.setState({ modifierOpen: true });\n  }\n\n  handleModifierClose = () => {\n    this.setState({ modifierOpen: false });\n  }\n\n  handleModifierChange = modifier => {\n    this.props.onSkinTone(modifier);\n  }\n\n  render () {\n    const { loading, style, intl, custom_emojis, skinTone, frequentlyUsedEmojis } = this.props;\n\n    if (loading) {\n      return <div style={{ width: 299 }} />;\n    }\n\n    const title = intl.formatMessage(messages.emoji);\n    const { modifierOpen } = this.state;\n\n    return (\n      <div className={classNames('emoji-picker-dropdown__menu', { selecting: modifierOpen })} style={style} ref={this.setRef}>\n        <EmojiPicker\n          perLine={8}\n          emojiSize={22}\n          sheetSize={32}\n          custom={buildCustomEmojis(custom_emojis)}\n          color=''\n          emoji=''\n          set='twitter'\n          title={title}\n          i18n={this.getI18n()}\n          onClick={this.handleClick}\n          include={categoriesSort}\n          recent={frequentlyUsedEmojis}\n          skin={skinTone}\n          showPreview={false}\n          backgroundImageFn={backgroundImageFn}\n          emojiTooltip\n        />\n\n        <ModifierPicker\n          active={modifierOpen}\n          modifier={skinTone}\n          onOpen={this.handleModifierOpen}\n          onClose={this.handleModifierClose}\n          onChange={this.handleModifierChange}\n        />\n      </div>\n    );\n  }\n\n}\n\n@injectIntl\nexport default class EmojiPickerDropdown extends React.PureComponent {\n\n  static propTypes = {\n    custom_emojis: ImmutablePropTypes.list,\n    frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n    intl: PropTypes.object.isRequired,\n    onPickEmoji: PropTypes.func.isRequired,\n    onSkinTone: PropTypes.func.isRequired,\n    skinTone: PropTypes.number.isRequired,\n  };\n\n  state = {\n    active: false,\n    loading: false,\n  };\n\n  setRef = (c) => {\n    this.dropdown = c;\n  }\n\n  onShowDropdown = ({ target }) => {\n    this.setState({ active: true });\n\n    if (!EmojiPicker) {\n      this.setState({ loading: true });\n\n      EmojiPickerAsync().then(EmojiMart => {\n        EmojiPicker = EmojiMart.Picker;\n        Emoji       = EmojiMart.Emoji;\n\n        this.setState({ loading: false });\n      }).catch(() => {\n        this.setState({ loading: false });\n      });\n    }\n\n    const { top } = target.getBoundingClientRect();\n    this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n  }\n\n  onHideDropdown = () => {\n    this.setState({ active: false });\n  }\n\n  onToggle = (e) => {\n    if (!this.state.loading && (!e.key || e.key === 'Enter')) {\n      if (this.state.active) {\n        this.onHideDropdown();\n      } else {\n        this.onShowDropdown(e);\n      }\n    }\n  }\n\n  handleKeyDown = e => {\n    if (e.key === 'Escape') {\n      this.onHideDropdown();\n    }\n  }\n\n  setTargetRef = c => {\n    this.target = c;\n  }\n\n  findTarget = () => {\n    return this.target;\n  }\n\n  render () {\n    const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis } = this.props;\n    const title = intl.formatMessage(messages.emoji);\n    const { active, loading, placement } = this.state;\n\n    return (\n      <div className='emoji-picker-dropdown' onKeyDown={this.handleKeyDown}>\n        <div ref={this.setTargetRef} className='emoji-button' title={title} aria-label={title} aria-expanded={active} role='button' onClick={this.onToggle} onKeyDown={this.onToggle} tabIndex={0}>\n          <img\n            className={classNames('emojione', { 'pulse-loading': active && loading })}\n            alt='🙂'\n            src={`${assetHost}/emoji/1f602.svg`}\n          />\n        </div>\n\n        <Overlay show={active} placement={placement} target={this.findTarget}>\n          <EmojiPickerMenu\n            custom_emojis={this.props.custom_emojis}\n            loading={loading}\n            onClose={this.onHideDropdown}\n            onPick={onPickEmoji}\n            onSkinTone={onSkinTone}\n            skinTone={skinTone}\n            frequentlyUsedEmojis={frequentlyUsedEmojis}\n          />\n        </Overlay>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","import { connect } from 'react-redux';\nimport UploadForm from '../components/upload_form';\n\nconst mapStateToProps = state => ({\n  mediaIds: state.getIn(['compose', 'media_attachments']).map(item => item.get('id')),\n});\n\nexport default connect(mapStateToProps)(UploadForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_form_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport UploadProgressContainer from '../containers/upload_progress_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport UploadContainer from '../containers/upload_container';\n\nexport default class UploadForm extends ImmutablePureComponent {\n\n  static propTypes = {\n    mediaIds: ImmutablePropTypes.list.isRequired,\n  };\n\n  render () {\n    const { mediaIds } = this.props;\n\n    return (\n      <div className='compose-form__upload-wrapper'>\n        <UploadProgressContainer />\n\n        <div className='compose-form__uploads-wrapper'>\n          {mediaIds.map(id => (\n            <UploadContainer id={id} key={id} />\n          ))}\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_form.js","import { connect } from 'react-redux';\nimport UploadProgress from '../components/upload_progress';\n\nconst mapStateToProps = state => ({\n  active: state.getIn(['compose', 'is_uploading']),\n  progress: state.getIn(['compose', 'progress']),\n});\n\nexport default connect(mapStateToProps)(UploadProgress);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class UploadProgress extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    progress: PropTypes.number,\n  };\n\n  render () {\n    const { active, progress } = this.props;\n\n    if (!active) {\n      return null;\n    }\n\n    return (\n      <div className='upload-progress'>\n        <div className='upload-progress__icon'>\n          <i className='fa fa-upload' />\n        </div>\n\n        <div className='upload-progress__message'>\n          <FormattedMessage id='upload_progress.label' defaultMessage='Uploading...' />\n\n          <div className='upload-progress__backdrop'>\n            <Motion defaultStyle={{ width: 0 }} style={{ width: spring(progress) }}>\n              {({ width }) =>\n                <div className='upload-progress__tracker' style={{ width: `${width}%` }} />\n              }\n            </Motion>\n          </div>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_progress.js","import { connect } from 'react-redux';\nimport Upload from '../components/upload';\nimport { undoUploadCompose, changeUploadCompose } from '../../../actions/compose';\nimport { openModal } from '../../../actions/modal';\n\nconst mapStateToProps = (state, { id }) => ({\n  media: state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onUndo: id => {\n    dispatch(undoUploadCompose(id));\n  },\n\n  onDescriptionChange: (id, description) => {\n    dispatch(changeUploadCompose(id, { description }));\n  },\n\n  onOpenFocalPoint: id => {\n    dispatch(openModal('FOCAL_POINT', { id }));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Upload);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n  description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },\n});\n\n@injectIntl\nexport default class Upload extends ImmutablePureComponent {\n\n  static propTypes = {\n    media: ImmutablePropTypes.map.isRequired,\n    intl: PropTypes.object.isRequired,\n    onUndo: PropTypes.func.isRequired,\n    onDescriptionChange: PropTypes.func.isRequired,\n    onOpenFocalPoint: PropTypes.func.isRequired,\n  };\n\n  state = {\n    hovered: false,\n    focused: false,\n    dirtyDescription: null,\n  };\n\n  handleUndoClick = () => {\n    this.props.onUndo(this.props.media.get('id'));\n  }\n\n  handleFocalPointClick = () => {\n    this.props.onOpenFocalPoint(this.props.media.get('id'));\n  }\n\n  handleInputChange = e => {\n    this.setState({ dirtyDescription: e.target.value });\n  }\n\n  handleMouseEnter = () => {\n    this.setState({ hovered: true });\n  }\n\n  handleMouseLeave = () => {\n    this.setState({ hovered: false });\n  }\n\n  handleInputFocus = () => {\n    this.setState({ focused: true });\n  }\n\n  handleInputBlur = () => {\n    const { dirtyDescription } = this.state;\n\n    this.setState({ focused: false, dirtyDescription: null });\n\n    if (dirtyDescription !== null) {\n      this.props.onDescriptionChange(this.props.media.get('id'), dirtyDescription);\n    }\n  }\n\n  render () {\n    const { intl, media } = this.props;\n    const active          = this.state.hovered || this.state.focused;\n    const description     = this.state.dirtyDescription || (this.state.dirtyDescription !== '' && media.get('description')) || '';\n    const focusX = media.getIn(['meta', 'focus', 'x']);\n    const focusY = media.getIn(['meta', 'focus', 'y']);\n    const x = ((focusX /  2) + .5) * 100;\n    const y = ((focusY / -2) + .5) * 100;\n\n    return (\n      <div className='compose-form__upload' onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>\n        <Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>\n          {({ scale }) => (\n            <div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>\n              <div className={classNames('compose-form__upload__actions', { active })}>\n                <button className='icon-button' onClick={this.handleUndoClick}><i className='fa fa-times' /> <FormattedMessage id='upload_form.undo' defaultMessage='Delete' /></button>\n                {media.get('type') === 'image' && <button className='icon-button' onClick={this.handleFocalPointClick}><i className='fa fa-crosshairs' /> <FormattedMessage id='upload_form.focus' defaultMessage='Crop' /></button>}\n              </div>\n\n              <div className={classNames('compose-form__upload-description', { active })}>\n                <label>\n                  <span style={{ display: 'none' }}>{intl.formatMessage(messages.description)}</span>\n\n                  <input\n                    placeholder={intl.formatMessage(messages.description)}\n                    type='text'\n                    value={description}\n                    maxLength={420}\n                    onFocus={this.handleInputFocus}\n                    onChange={this.handleInputChange}\n                    onBlur={this.handleInputBlur}\n                  />\n                </label>\n              </div>\n            </div>\n          )}\n        </Motion>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Warning from '../components/warning';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nconst mapStateToProps = state => ({\n  needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', me, 'locked']),\n  hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n  directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct',\n});\n\nconst WarningWrapper = ({ needsLockWarning, hashtagWarning, directMessageWarning }) => {\n  if (needsLockWarning) {\n    return <Warning message={<FormattedMessage id='compose_form.lock_disclaimer' defaultMessage='Your account is not {locked}. Anyone can follow you to view your follower-only posts.' values={{ locked: <a href='/user-settings'><FormattedMessage id='compose_form.lock_disclaimer.lock' defaultMessage='locked' /></a> }} />} />;\n  }\n\n  if (hashtagWarning) {\n    return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage=\"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.\" />} />;\n  }\n\n  if (directMessageWarning) {\n    const message = (\n      <span>\n        <FormattedMessage id='compose_form.direct_message_warning' defaultMessage='This toot will only be sent to all the mentioned users.' /> <a href='/terms' target='_blank'><FormattedMessage id='compose_form.direct_message_warning_learn_more' defaultMessage='Learn more' /></a>\n      </span>\n    );\n\n    return <Warning message={message} />;\n  }\n\n  return null;\n};\n\nWarningWrapper.propTypes = {\n  needsLockWarning: PropTypes.bool,\n  hashtagWarning: PropTypes.bool,\n  directMessageWarning: PropTypes.bool,\n};\n\nexport default connect(mapStateToProps)(WarningWrapper);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/warning_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nexport default class Warning extends React.PureComponent {\n\n  static propTypes = {\n    message: PropTypes.node.isRequired,\n  };\n\n  render () {\n    const { message } = this.props;\n\n    return (\n      <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n        {({ opacity, scaleX, scaleY }) => (\n          <div className='compose-form__warning' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n            {message}\n          </div>\n        )}\n      </Motion>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/warning.js","import { urlRegex } from './url_regex';\n\nconst urlPlaceholder = 'xxxxxxxxxxxxxxxxxxxxxxx';\n\nexport function countableText(inputText) {\n  return inputText;\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/counter.js","const regexen = {};\n\nconst regexSupplant = function(regex, flags) {\n  flags = flags || '';\n  if (typeof regex !== 'string') {\n    if (regex.global && flags.indexOf('g') < 0) {\n      flags += 'g';\n    }\n    if (regex.ignoreCase && flags.indexOf('i') < 0) {\n      flags += 'i';\n    }\n    if (regex.multiline && flags.indexOf('m') < 0) {\n      flags += 'm';\n    }\n\n    regex = regex.source;\n  }\n  return new RegExp(regex.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n    var newRegex = regexen[name] || '';\n    if (typeof newRegex !== 'string') {\n      newRegex = newRegex.source;\n    }\n    return newRegex;\n  }), flags);\n};\n\nconst stringSupplant = function(str, values) {\n  return str.replace(/#\\{(\\w+)\\}/g, function(match, name) {\n    return values[name] || '';\n  });\n};\n\nexport const urlRegex = (function() {\n  regexen.spaces_group = /\\x09-\\x0D\\x20\\x85\\xA0\\u1680\\u180E\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000/;\n  regexen.invalid_chars_group = /\\uFFFE\\uFEFF\\uFFFF\\u202A-\\u202E/;\n  regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/;\n  regexen.validUrlPrecedingChars = regexSupplant(/(?:[^A-Za-z0-9@@$###{invalid_chars_group}]|^)/);\n  regexen.invalidDomainChars = stringSupplant('#{punct}#{spaces_group}#{invalid_chars_group}', regexen);\n  regexen.validDomainChars = regexSupplant(/[^#{invalidDomainChars}]/);\n  regexen.validSubdomain = regexSupplant(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n  regexen.validDomainName = regexSupplant(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/);\n  regexen.validGTLD = regexSupplant(RegExp(\n    '(?:(?:' +\n      '삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|' +\n      '政务|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|' +\n      'ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|' +\n      'بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|' +\n      'zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|' +\n      'yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|' +\n      'wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|' +\n      'website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|' +\n      'wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|' +\n      'vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|' +\n      'vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|' +\n      'university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|' +\n      'travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|' +\n      'toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|' +\n      'tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|' +\n      'tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|' +\n      'swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|' +\n      'stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|' +\n      'stada|srt|srl|spreadbetting|spot|spiegel|space|soy|sony|song|solutions|solar|sohu|software|' +\n      'softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|' +\n      'showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|' +\n      'sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|' +\n      'science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|' +\n      'sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|' +\n      'saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|' +\n      'rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|' +\n      'repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|' +\n      'realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|' +\n      'protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|' +\n      'pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|' +\n      'pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|' +\n      'pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|' +\n      'pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|' +\n      'onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|' +\n      'obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|' +\n      'nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|' +\n      'net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|' +\n      'msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|' +\n      'monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|' +\n      'miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|' +\n      'mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|' +\n      'makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|' +\n      'lotte|london|lol|loft|locus|locker|loans|loan|lixil|living|live|lipsy|link|linde|lincoln|limo|' +\n      'limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|' +\n      'lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|' +\n      'lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|' +\n      'komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|' +\n      'kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|' +\n      'jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|' +\n      'investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|' +\n      'industries|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|' +\n      'hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|' +\n      'honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|' +\n      'hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|' +\n      'hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|' +\n      'gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|' +\n      'globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|' +\n      'garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|' +\n      'ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|' +\n      'football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|' +\n      'fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|' +\n      'ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|' +\n      'extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|' +\n      'estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|' +\n      'email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|' +\n      'download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|' +\n      'direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|' +\n      'delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|' +\n      'cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|courses|' +\n      'coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|' +\n      'construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|' +\n      'college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|' +\n      'cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|' +\n      'chintai|cheap|chat|chase|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|' +\n      'catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|' +\n      'capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|' +\n      'bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|' +\n      'bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|' +\n      'boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|' +\n      'black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|' +\n      'beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|' +\n      'barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|' +\n      'autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|' +\n      'art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|' +\n      'amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|' +\n      'alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|' +\n      'afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|' +\n      'academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion' +\n    ')(?=[^0-9a-zA-Z@]|$))'));\n  regexen.validCCTLD = regexSupplant(RegExp(\n    '(?:(?:' +\n      '한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|' +\n      'ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|' +\n      'بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ελ|' +\n      'zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|' +\n      'tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|' +\n      're|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|' +\n      'mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|' +\n      'ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|' +\n      'gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|' +\n      'do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|' +\n      'bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac' +\n    ')(?=[^0-9a-zA-Z@]|$))'));\n  regexen.validPunycode = /(?:xn--[0-9a-z]+)/;\n  regexen.validSpecialCCTLD = /(?:(?:co|tv)(?=[^0-9a-zA-Z@]|$))/;\n  regexen.validDomain = regexSupplant(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/);\n  regexen.validPortNumber = /[0-9]+/;\n  regexen.pd = /\\u002d\\u058a\\u05be\\u1400\\u1806\\u2010-\\u2015\\u2e17\\u2e1a\\u2e3a\\u2e40\\u301c\\u3030\\u30a0\\ufe31\\ufe58\\ufe63\\uff0d/;\n  regexen.validGeneralUrlPathChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?]/i);\n  // Allow URL paths to contain up to two nested levels of balanced parens\n  //  1. Used in Wikipedia URLs like /Primer_(film)\n  //  2. Used in IIS sessions like /S(dfd346)/\n  //  3. Used in Rdio URLs like /track/We_Up_(Album_Version_(Edited))/\n  regexen.validUrlBalancedParens = regexSupplant(\n    '\\\\('                                   +\n      '(?:'                                 +\n        '#{validGeneralUrlPathChars}+'      +\n        '|'                                 +\n        // allow one nested level of balanced parentheses\n        '(?:'                               +\n          '#{validGeneralUrlPathChars}*'    +\n          '\\\\('                             +\n            '#{validGeneralUrlPathChars}+'  +\n          '\\\\)'                             +\n          '#{validGeneralUrlPathChars}*'    +\n        ')'                                 +\n      ')'                                   +\n    '\\\\)',\n    'i');\n  // Valid end-of-path chracters (so /foo. does not gobble the period).\n  // 1. Allow =&# for empty URL parameters and other URL-join artifacts\n  regexen.validUrlPathEndingChars = regexSupplant(/[^#{spaces_group}\\(\\)\\?!\\*';:=\\,\\.\\$%\\[\\]#{pd}~&\\|@]|(?:#{validUrlBalancedParens})/i);\n  // Allow @ in a url, but only in the middle. Catch things like http://example.com/@user/\n  regexen.validUrlPath = regexSupplant('(?:' +\n    '(?:' +\n      '#{validGeneralUrlPathChars}*' +\n        '(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*' +\n        '#{validUrlPathEndingChars}'+\n      ')|(?:@#{validGeneralUrlPathChars}+\\/)'+\n    ')', 'i');\n  regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i;\n  regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i;\n  regexen.validUrl = regexSupplant(\n    '('                                                          + // $1 URL\n      '(https?:\\\\/\\\\/)'                                          + // $2 Protocol\n      '(#{validDomain})'                                         + // $3 Domain(s)\n      '(?::(#{validPortNumber}))?'                               + // $4 Port number (optional)\n      '(\\\\/#{validUrlPath}*)?'                                   + // $5 URL Path\n      '(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?'  + // $6 Query String\n    ')',\n    'gi');\n  return regexen.validUrl;\n}());\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/util/url_regex.js","import { connect } from 'react-redux';\nimport ComposeForm from '../components/compose_form';\nimport { uploadCompose } from '../../../actions/compose';\nimport {\n  changeCompose,\n  submitCompose,\n  clearComposeSuggestions,\n  fetchComposeSuggestions,\n  selectComposeSuggestion,\n  changeComposeSpoilerText,\n  insertEmojiCompose,\n} from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n  text: state.getIn(['compose', 'text']),\n  suggestion_token: state.getIn(['compose', 'suggestion_token']),\n  suggestions: state.getIn(['compose', 'suggestions']),\n  spoiler: state.getIn(['compose', 'spoiler']),\n  spoiler_text: state.getIn(['compose', 'spoiler_text']),\n  privacy: state.getIn(['compose', 'privacy']),\n  focusDate: state.getIn(['compose', 'focusDate']),\n  caretPosition: state.getIn(['compose', 'caretPosition']),\n  preselectDate: state.getIn(['compose', 'preselectDate']),\n  is_submitting: state.getIn(['compose', 'is_submitting']),\n  is_uploading: state.getIn(['compose', 'is_uploading']),\n  showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n  anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n  onChange (text) {\n    dispatch(changeCompose(text));\n  },\n\n  onSubmit () {\n    dispatch(submitCompose());\n  },\n\n  onClearSuggestions () {\n    dispatch(clearComposeSuggestions());\n  },\n\n  onFetchSuggestions (token) {\n    dispatch(fetchComposeSuggestions(token));\n  },\n\n  onSuggestionSelected (position, token, accountId) {\n    dispatch(selectComposeSuggestion(position, token, accountId));\n  },\n\n  onChangeSpoilerText (checked) {\n    dispatch(changeComposeSpoilerText(checked));\n  },\n\n  onPaste (files) {\n    dispatch(uploadCompose(files));\n  },\n\n  onPickEmoji (position, data, needsSpace) {\n    dispatch(insertEmojiCompose(position, data, needsSpace));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ComposeForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/compose_form_container.js","import React from 'react';\nimport ComposeFormContainer from './containers/compose_form_container';\nimport NavigationContainer from './containers/navigation_container';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport { mountCompose, unmountCompose } from '../../actions/compose';\nimport { Link } from 'react-router-dom';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport SearchContainer from './containers/search_container';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport SearchResultsContainer from './containers/search_results_container';\nimport { changeComposing } from '../../actions/compose';\n\nconst messages = defineMessages({\n  start: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n  home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n  notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n  public: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n  community: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n  logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n});\n\nconst mapStateToProps = (state, ownProps) => ({\n  columns: state.getIn(['settings', 'columns']),\n  showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Compose extends React.PureComponent {\n\n  static propTypes = {\n    dispatch: PropTypes.func.isRequired,\n    columns: ImmutablePropTypes.list.isRequired,\n    multiColumn: PropTypes.bool,\n    showSearch: PropTypes.bool,\n    isSearchPage: PropTypes.bool,\n    intl: PropTypes.object.isRequired,\n  };\n\n  componentDidMount () {\n    const { isSearchPage } = this.props;\n\n    if (!isSearchPage) {\n      this.props.dispatch(mountCompose());\n    }\n  }\n\n  componentWillUnmount () {\n    const { isSearchPage } = this.props;\n\n    if (!isSearchPage) {\n      this.props.dispatch(unmountCompose());\n    }\n  }\n\n  onFocus = () => {\n    this.props.dispatch(changeComposing(true));\n  }\n\n  onBlur = () => {\n    this.props.dispatch(changeComposing(false));\n  }\n\n  render () {\n    const { multiColumn, showSearch, isSearchPage, intl } = this.props;\n\n    let header = '';\n\n    if (multiColumn) {\n      const { columns } = this.props;\n      header = (\n        <nav className='drawer__header'>\n          <Link to='/getting-started' className='drawer__tab' title={intl.formatMessage(messages.start)} aria-label={intl.formatMessage(messages.start)}><i role='img' className='fa fa-fw fa-asterisk' /></Link>\n          {!columns.some(column => column.get('id') === 'HOME') && (\n            <Link to='/timelines/home' className='drawer__tab' title={intl.formatMessage(messages.home_timeline)} aria-label={intl.formatMessage(messages.home_timeline)}><i role='img' className='fa fa-fw fa-home' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'NOTIFICATIONS') && (\n            <Link to='/notifications' className='drawer__tab' title={intl.formatMessage(messages.notifications)} aria-label={intl.formatMessage(messages.notifications)}><i role='img' className='fa fa-fw fa-bell' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'COMMUNITY') && (\n            <Link to='/timelines/public/local' className='drawer__tab' title={intl.formatMessage(messages.community)} aria-label={intl.formatMessage(messages.community)}><i role='img' className='fa fa-fw fa-users' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'PUBLIC') && (\n            <Link to='/timelines/public' className='drawer__tab' title={intl.formatMessage(messages.public)} aria-label={intl.formatMessage(messages.public)}><i role='img' className='fa fa-fw fa-globe' /></Link>\n          )}\n          <a href='/user-settings' className='drawer__tab' title={intl.formatMessage(messages.preferences)} aria-label={intl.formatMessage(messages.preferences)}><i role='img' className='fa fa-fw fa-cog' /></a>\n          <a href='/auth/sign_out' className='drawer__tab' data-method='delete' title={intl.formatMessage(messages.logout)} aria-label={intl.formatMessage(messages.logout)}><i role='img' className='fa fa-fw fa-sign-out' /></a>\n        </nav>\n      );\n    }\n\n    return (\n      <div className='drawer'>\n        {header}\n\n        {(multiColumn || isSearchPage) && <SearchContainer /> }\n\n        <div className='drawer__pager'>\n          <div className='drawer__inner' onFocus={this.onFocus}>\n            <NavigationContainer onClose={this.onBlur} />\n            <ComposeFormContainer />\n            {multiColumn && (\n              <div className='drawer__inner__mastodon'>\n              </div>\n            )}\n          </div>\n\n          <Motion defaultStyle={{ x: isSearchPage ? 0 : -100 }} style={{ x: spring(showSearch || isSearchPage ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n            {({ x }) => (\n              <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n                <SearchResultsContainer />\n              </div>\n            )}\n          </Motion>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n  followAccount,\n  unfollowAccount,\n  blockAccount,\n  unblockAccount,\n  muteAccount,\n  unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n  unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n  const getAccount = makeGetAccount();\n\n  const mapStateToProps = (state, props) => ({\n    account: getAccount(state, props.id),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n  onFollow (account) {\n    if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n      if (unfollowModal) {\n        dispatch(openModal('CONFIRM', {\n          message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\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 <div />;\n    }\n\n    if (hidden) {\n      return (\n        <div>\n          {account.get('display_name')}\n          {account.get('username')}\n        </div>\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 = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n      } else if (blocking) {\n        buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n      } else if (muting) {\n        let hidingNotificationsButton;\n        if (account.getIn(['relationship', 'muting_notifications'])) {\n          hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n        } else {\n          hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username')  })} onClick={this.handleMuteNotifications} />;\n        }\n        buttons = (\n          <Fragment>\n            <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n            {hidingNotificationsButton}\n          </Fragment>\n        );\n      } else if (!account.get('moved') || following) {\n        buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n      }\n    }\n\n    return (\n      <div className='account'>\n        <div className='account__wrapper'>\n          <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n            <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n            <DisplayName account={account} />\n          </Permalink>\n\n          <div className='account__relationship'>\n            {buttons}\n          </div>\n        </div>\n      </div>\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      <div className='navigation-bar'>\n        <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n          <span style={{ display: 'none' }}>{this.props.account.get('acct')}</span>\n          <Avatar account={this.props.account} size={40} />\n        </Permalink>\n\n        <div className='navigation-bar__profile'>\n          <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n            <strong className='navigation-bar__profile-account'>@{this.props.account.get('acct')}</strong>\n          </Permalink>\n\n          <a href='/user-settings' className='navigation-bar__profile-edit'><FormattedMessage id='navigation_bar.edit_profile' defaultMessage='Edit profile' /></a>\n        </div>\n\n        <IconButton title='' icon='close' onClick={this.props.onClose} />\n      </div>\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 ? <FormattedMessage id='search_popout.tips.full_text' defaultMessage='Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.' /> : <FormattedMessage id='search_popout.tips.text' defaultMessage='Simple text returns matching display names, usernames and hashtags' />;\n    return (\n      <div style={{ ...style, position: 'absolute', width: 285 }}>\n        <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n          {({ opacity, scaleX, scaleY }) => (\n            <div className='search-popout' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n              <h4><FormattedMessage id='search_popout.search_format' defaultMessage='Advanced search format' /></h4>\n\n              <ul>\n                <li><em>#example</em> <FormattedMessage id='search_popout.tips.hashtag' defaultMessage='hashtag' /></li>\n                <li><em>@username@domain</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n                <li><em>URL</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n                <li><em>URL</em> <FormattedMessage id='search_popout.tips.status' defaultMessage='status' /></li>\n              </ul>\n\n              {extraInformation}\n            </div>\n          )}\n        </Motion>\n      </div>\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      <div className='search'>\n        <label>\n          <span style={{ display: 'none' }}>{intl.formatMessage(messages.placeholder)}</span>\n          <input\n            className='search__input'\n            type='text'\n            placeholder={intl.formatMessage(messages.placeholder)}\n            value={value}\n            onChange={this.handleChange}\n            onKeyUp={this.handleKeyDown}\n            onFocus={this.handleFocus}\n            onBlur={this.handleBlur}\n          />\n        </label>\n\n        <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n          <i className={`fa fa-search ${hasValue ? '' : 'active'}`} />\n          <i aria-label={intl.formatMessage(messages.placeholder)} className={`fa fa-times-circle ${hasValue ? 'active' : ''}`} />\n        </div>\n\n        <Overlay show={expanded && !hasValue} placement='bottom' target={this}>\n          <SearchPopout />\n        </Overlay>\n      </div>\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        <div className='search-results__section'>\n          <h5><FormattedMessage id='search_results.accounts' defaultMessage='People' /></h5>\n\n          {results.get('accounts').map(accountId => <AccountContainer key={accountId} id={accountId} />)}\n        </div>\n      );\n    }\n\n    if (results.get('statuses') && results.get('statuses').size > 0) {\n      count   += results.get('statuses').size;\n      statuses = (\n        <div className='search-results__section'>\n          <h5><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>\n\n          {results.get('statuses').map(statusId => <StatusContainer key={statusId} id={statusId} />)}\n        </div>\n      );\n    }\n\n    if (results.get('hashtags') && results.get('hashtags').size > 0) {\n      count += results.get('hashtags').size;\n      hashtags = (\n        <div className='search-results__section'>\n          <h5><FormattedMessage id='search_results.hashtags' defaultMessage='Hashtags' /></h5>\n\n          {results.get('hashtags').map(hashtag => (\n            <Link key={hashtag} className='search-results__hashtag' to={`/timelines/tag/${hashtag}`}>\n              #{hashtag}\n            </Link>\n          ))}\n        </div>\n      );\n    }\n\n    return (\n      <div className='search-results'>\n        <div className='search-results__header'>\n          <FormattedMessage id='search_results.total' defaultMessage='{count, number} {count, plural, one {result} other {results}}' values={{ count }} />\n        </div>\n\n        {accounts}\n        {statuses}\n        {hashtags}\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search_results.js"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///features/compose.js","webpack:///./app/javascript/mastodon/containers/status_container.js","webpack:///./app/javascript/mastodon/features/compose/components/compose_form.js","webpack:///./app/javascript/mastodon/features/compose/components/character_counter.js","webpack:///./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","webpack:///./app/javascript/mastodon/features/compose/components/reply_indicator.js","webpack:///./app/javascript/mastodon/components/autosuggest_textarea.js","webpack:///./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","webpack:///./app/javascript/mastodon/features/compose/components/autosuggest_account.js","webpack:///./app/javascript/mastodon/components/autosuggest_emoji.js","webpack:///./node_modules/react-textarea-autosize/es/index.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_button.js","webpack:///./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","webpack:///./app/javascript/mastodon/features/compose/components/text_icon_button.js","webpack:///./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","webpack:///./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_form_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_form.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload_progress.js","webpack:///./app/javascript/mastodon/features/compose/containers/upload_container.js","webpack:///./app/javascript/mastodon/features/compose/components/upload.js","webpack:///./app/javascript/mastodon/features/compose/containers/warning_container.js","webpack:///./app/javascript/mastodon/features/compose/components/warning.js","webpack:///./app/javascript/mastodon/features/compose/containers/compose_form_container.js","webpack:///./app/javascript/mastodon/features/compose/index.js","webpack:///./app/javascript/mastodon/containers/account_container.js","webpack:///./app/javascript/mastodon/components/account.js","webpack:///./app/javascript/mastodon/utils/numbers.js","webpack:///./app/javascript/mastodon/features/compose/components/navigation_bar.js","webpack:///./app/javascript/mastodon/features/compose/components/action_bar.js","webpack:///./app/javascript/mastodon/features/compose/components/search.js","webpack:///./app/javascript/mastodon/features/compose/containers/navigation_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_container.js","webpack:///./app/javascript/mastodon/features/compose/containers/search_results_container.js","webpack:///./app/javascript/mastodon/features/compose/components/search_results.js","webpack:///./app/javascript/mastodon/components/hashtag.js","webpack:///./node_modules/react-sparklines/build/index.js"],"names":["webpackJsonp","277","module","__webpack_exports__","__webpack_require__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default","n","__WEBPACK_IMPORTED_MODULE_1_react__","__WEBPACK_IMPORTED_MODULE_2_react_redux__","__WEBPACK_IMPORTED_MODULE_3__components_status__","__WEBPACK_IMPORTED_MODULE_4__selectors__","__WEBPACK_IMPORTED_MODULE_5__actions_compose__","__WEBPACK_IMPORTED_MODULE_6__actions_interactions__","__WEBPACK_IMPORTED_MODULE_7__actions_accounts__","__WEBPACK_IMPORTED_MODULE_8__actions_statuses__","__WEBPACK_IMPORTED_MODULE_9__actions_mutes__","__WEBPACK_IMPORTED_MODULE_10__actions_reports__","__WEBPACK_IMPORTED_MODULE_11__actions_modal__","__WEBPACK_IMPORTED_MODULE_12_react_intl__","__WEBPACK_IMPORTED_MODULE_13__initial_state__","__WEBPACK_IMPORTED_MODULE_14__actions_alerts__","messages","Object","deleteConfirm","id","defaultMessage","deleteMessage","redraftConfirm","redraftMessage","blockConfirm","makeMapStateToProps","getStatus","state","props","status","mapDispatchToProps","dispatch","_ref","intl","onReply","router","onModalReblog","onReblog","e","get","shiftKey","this","onFavourite","onPin","onEmbed","url","onError","error","onDelete","withRedraft","arguments","length","undefined","message","formatMessage","confirm","onConfirm","onDirect","account","onMention","onOpenMedia","media","index","onOpenVideo","time","onBlock","values","name","onReport","onMute","onMuteConversation","onToggleHidden","293","d","ComposeForm","_class","_class2","_temp2","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_4_react__","__WEBPACK_IMPORTED_MODULE_4_react___default","__WEBPACK_IMPORTED_MODULE_5__character_counter__","__WEBPACK_IMPORTED_MODULE_6__components_button__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_8_prop_types__","__WEBPACK_IMPORTED_MODULE_8_prop_types___default","__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__","__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__","__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__","__WEBPACK_IMPORTED_MODULE_13__containers_spoiler_button_container__","__WEBPACK_IMPORTED_MODULE_14__containers_privacy_dropdown_container__","__WEBPACK_IMPORTED_MODULE_15__containers_sensitive_button_container__","__WEBPACK_IMPORTED_MODULE_16__containers_emoji_picker_dropdown_container__","__WEBPACK_IMPORTED_MODULE_17__containers_upload_form_container__","__WEBPACK_IMPORTED_MODULE_18__containers_warning_container__","__WEBPACK_IMPORTED_MODULE_19__is_mobile__","__WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_21_stringz__","__WEBPACK_IMPORTED_MODULE_22__initial_state__","allowedAroundShortCode","placeholder","spoiler_placeholder","publish","publishLoud","_ImmutablePureCompone","_temp","_this","_ret","_len","args","Array","_key","call","apply","concat","handleChange","onChange","target","value","handleKeyDown","keyCode","ctrlKey","metaKey","handleSubmit","text","autosuggestTextarea","textarea","_this$props","is_submitting","is_uploading","anyMedia","fulltext","spoiler_text","join","trim","onSubmit","onSuggestionsClearRequested","onClearSuggestions","onSuggestionsFetchRequested","token","onFetchSuggestions","onSuggestionSelected","tokenStart","handleChangeSpoilerText","onChangeSpoilerText","setAutosuggestTextarea","c","setSpoilerText","spoilerText","handleEmojiPick","data","position","selectionStart","needsSpace","custom","includes","onPickEmoji","prototype","componentDidUpdate","prevProps","focusDate","selectionEnd","preselectDate","search","caretPosition","setSelectionRange","focus","spoiler","render","_props","onPaste","showSearch","disabled","disabledButton","publishText","privacy","className","style","display","a","createElement","onKeyDown","type","ref","suggestions","autoFocus","window","innerWidth","max","onClick","block","propTypes","object","isRequired","string","suggestion_token","list","bool","instanceOf","Date","number","func","defaultProps","294","CharacterCounter","__WEBPACK_IMPORTED_MODULE_5_stringz__","_React$PureComponent","checkRemainingText","diff","PureComponent","295","__WEBPACK_IMPORTED_MODULE_0_react_redux__","__WEBPACK_IMPORTED_MODULE_1__actions_compose__","__WEBPACK_IMPORTED_MODULE_2__selectors__","__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__","getIn","onCancel","296","ReplyIndicator","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_6_prop_types__","__WEBPACK_IMPORTED_MODULE_6_prop_types___default","__WEBPACK_IMPORTED_MODULE_7__components_avatar__","__WEBPACK_IMPORTED_MODULE_8__components_icon_button__","__WEBPACK_IMPORTED_MODULE_9__components_display_name__","__WEBPACK_IMPORTED_MODULE_10_react_intl__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_12__rtl__","cancel","handleClick","handleAccountClick","button","preventDefault","context","history","push","content","__html","direction","title","icon","inverted","href","size","dangerouslySetInnerHTML","contextTypes","map","297","AutosuggestTextarea","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default","__WEBPACK_IMPORTED_MODULE_5_react__","__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__","__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_9_prop_types__","__WEBPACK_IMPORTED_MODULE_9_prop_types___default","__WEBPACK_IMPORTED_MODULE_10__rtl__","__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__","__WEBPACK_IMPORTED_MODULE_13_classnames__","__WEBPACK_IMPORTED_MODULE_13_classnames___default","textAtCursorMatchesToken","str","word","left","slice","right","indexOf","toLowerCase","suggestionsHidden","selectedSuggestion","lastToken","_textAtCursorMatchesT","setState","_this$state","which","isComposing","key","document","querySelector","parentElement","Math","min","stopPropagation","defaultPrevented","onBlur","onSuggestionClick","suggestion","currentTarget","getAttribute","setTextarea","clipboardData","files","renderSuggestion","i","inner","emoji","role","tabIndex","data-index","selected","onMouseDown","componentWillReceiveProps","nextProps","onKeyUp","inputRef","aria-autocomplete","isEmpty","298","__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__","getAccount","299","AutosuggestAccount","__WEBPACK_IMPORTED_MODULE_5__components_avatar__","__WEBPACK_IMPORTED_MODULE_6__components_display_name__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default","300","process","AutosuggestEmoji","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__","__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default","assetHost","env","CDN_HOST","imageUrl","mapping","native","replace","filename","src","alt","colons","301","_extends","assign","source","hasOwnProperty","_inheritsLoose","subClass","superClass","create","constructor","__proto__","_objectWithoutProperties","excluded","sourceKeys","keys","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","calculateNodeHeight","uiTextNode","uid","useCache","minRows","maxRows","hiddenTextarea","parentNode","body","appendChild","nodeStyling","calculateNodeStyling","paddingSize","borderSize","boxSizing","sizingStyle","forEach","HIDDEN_TEXTAREA_STYLE","setProperty","minHeight","Infinity","maxHeight","height","scrollHeight","singleRowHeight","rowCount","floor","node","computedStyleCache","getComputedStyle","SIZING_STYLE","reduce","obj","getPropertyValue","isIE","width","parseFloat","nodeInfo","__WEBPACK_IMPORTED_MODULE_0_react__","__WEBPACK_IMPORTED_MODULE_0_react___default","__WEBPACK_IMPORTED_MODULE_1_prop_types__","isBrowser","documentElement","currentStyle","min-height","max-height","visibility","overflow","z-index","top","purgeCache","seed","noop","requestAnimationFrame","cancelAnimationFrame","setTimeout","clearTimeout","onNextFrame","clearNextFrameAction","TextareaAutosize","_React$Component","_resizeLock","_onRootDOMNode","_rootDOMNode","_onChange","event","_controlled","_resizeComponent","callback","nodeHeight","_uid","useCacheForDOMMeasurements","_proto","onHeightChange","componentDidMount","_this2","_resizeListener","addEventListener","_this3","_clearNextFrame","_onNextFrameActionId","prevState","componentWillUnmount","removeEventListener","Component","302","__WEBPACK_IMPORTED_MODULE_1__components_upload_button__","__WEBPACK_IMPORTED_MODULE_2__actions_compose__","mapStateToProps","some","m","resetFileKey","onSelectFile","303","UploadButton","_dec","__WEBPACK_IMPORTED_MODULE_5__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_intl__","__WEBPACK_IMPORTED_MODULE_8_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default","upload","acceptContentTypes","iconStyle","lineHeight","fileElement","click","setRef","multiple","accept","toArray","listOf","304","__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__","__WEBPACK_IMPORTED_MODULE_3_react_intl__","marked","unmarked","label","active","ariaControls","305","TextIconButton","aria-label","aria-expanded","aria-controls","306","__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__","__WEBPACK_IMPORTED_MODULE_3__actions_modal__","__WEBPACK_IMPORTED_MODULE_4__is_mobile__","isModalOpen","modalType","isUserTouching","onModalOpen","onModalClose","307","PrivacyDropdown","__WEBPACK_IMPORTED_MODULE_5_react_intl__","__WEBPACK_IMPORTED_MODULE_6__components_icon_button__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default","__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_11_classnames__","__WEBPACK_IMPORTED_MODULE_11_classnames___default","public_short","public_long","unlisted_short","unlisted_long","private_short","private_long","direct_short","direct_long","change_privacy","listenerOptions","hasSupport","passive","PrivacyDropdownMenu","mounted","handleDocumentClick","contains","onClose","items","findIndex","item","element","childNodes","firstChild","lastChild","setFocusRef","focusedItem","defaultStyle","opacity","scaleX","scaleY","damping","stiffness","transform","aria-selected","meta","_React$PureComponent2","_ret2","_len2","_key2","open","placement","handleToggle","_ref2","actions","options","option","handleModalActionClick","_target$getBoundingCl","getBoundingClientRect","innerHeight","handleClose","componentWillMount","_props2","_state","valueOption","find","expanded","show","308","__WEBPACK_IMPORTED_MODULE_5_react_redux__","__WEBPACK_IMPORTED_MODULE_6_classnames__","__WEBPACK_IMPORTED_MODULE_6_classnames___default","__WEBPACK_IMPORTED_MODULE_7__components_icon_button__","__WEBPACK_IMPORTED_MODULE_8__actions_compose__","__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_11_react_intl__","visible","SensitiveButton","scale","compose-form__sensitive-button--visible","309","__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__","__WEBPACK_IMPORTED_MODULE_2__actions_settings__","__WEBPACK_IMPORTED_MODULE_3_reselect__","__WEBPACK_IMPORTED_MODULE_4_immutable__","__WEBPACK_IMPORTED_MODULE_5__actions_emojis__","DEFAULTS","getFrequentlyUsedEmojis","emojiCounters","emojis","keySeq","sort","b","reverse","perLine","uniqueDefaults","filter","getCustomEmojis","aShort","bShort","custom_emojis","skinTone","frequentlyUsedEmojis","onSkinTone","310","EmojiPickerDropdown","_class3","_class4","_temp4","_class5","__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__","__WEBPACK_IMPORTED_MODULE_8_classnames__","__WEBPACK_IMPORTED_MODULE_8_classnames___default","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__","__WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default","__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__","emoji_search","emoji_not_found","recent","search_results","people","nature","food","activity","travel","objects","symbols","flags","EmojiPicker","Emoji","backgroundImageFn","categoriesSort","ModifierPickerMenu","onSelect","attachListeners","removeListeners","set","sheetSize","skin","ModifierPicker","onOpen","handleSelect","modifier","EmojiPickerMenu","_React$PureComponent3","_temp3","_ret3","_len3","_key3","modifierOpen","getI18n","notfound","categories","foods","places","onPick","handleModifierOpen","handleModifierClose","handleModifierChange","loading","selecting","emojiSize","color","i18n","include","showPreview","emojiTooltip","_React$PureComponent4","_temp5","_this4","_ret4","_len4","_key4","dropdown","onShowDropdown","then","EmojiMart","Picker","catch","onHideDropdown","onToggle","setTargetRef","findTarget","_props3","pulse-loading","311","__WEBPACK_IMPORTED_MODULE_1__components_upload_form__","mediaIds","312","UploadForm","__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default","__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__","313","__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__","progress","314","UploadProgress","__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default","315","__WEBPACK_IMPORTED_MODULE_1__components_upload__","onUndo","onDescriptionChange","description","onOpenFocalPoint","316","Upload","__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default","hovered","focused","dirtyDescription","handleUndoClick","handleFocalPointClick","handleInputChange","handleMouseEnter","handleMouseLeave","handleInputFocus","handleInputBlur","focusX","focusY","x","y","onMouseEnter","onMouseLeave","backgroundImage","backgroundPosition","maxLength","onFocus","317","__WEBPACK_IMPORTED_MODULE_3__components_warning__","__WEBPACK_IMPORTED_MODULE_4_react_intl__","__WEBPACK_IMPORTED_MODULE_5__initial_state__","APPROX_HASHTAG_RE","needsLockWarning","hashtagWarning","test","directMessageWarning","WarningWrapper","locked","318","Warning","319","__WEBPACK_IMPORTED_MODULE_1__components_compose_form__","accountId","checked","809","defineProperty","Compose","__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__","__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__","__WEBPACK_IMPORTED_MODULE_7_react_redux__","__WEBPACK_IMPORTED_MODULE_9_react_router_dom__","__WEBPACK_IMPORTED_MODULE_11__containers_search_container__","__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__","__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default","__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__","start","home_timeline","notifications","public","community","preferences","logout","ownProps","columns","multiColumn","isSearchPage","header","to","column","data-method","864","__WEBPACK_IMPORTED_MODULE_5__components_account__","__WEBPACK_IMPORTED_MODULE_6__actions_accounts__","__WEBPACK_IMPORTED_MODULE_7__actions_modal__","__WEBPACK_IMPORTED_MODULE_8__actions_mutes__","__WEBPACK_IMPORTED_MODULE_9__initial_state__","unfollowConfirm","onFollow","onMuteNotifications","865","Account","__WEBPACK_IMPORTED_MODULE_7__avatar__","__WEBPACK_IMPORTED_MODULE_8__display_name__","__WEBPACK_IMPORTED_MODULE_9__permalink__","__WEBPACK_IMPORTED_MODULE_10__icon_button__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__","__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default","follow","unfollow","requested","unblock","unmute","mute_notifications","unmute_notifications","handleFollow","handleBlock","handleMute","handleMuteNotifications","handleUnmuteNotifications","hidden","buttons","following","blocking","muting","hidingNotificationsButton","871","shortNumberFormat","__WEBPACK_IMPORTED_MODULE_2_react_intl__","maximumFractionDigits","886","NavigationBar","__WEBPACK_IMPORTED_MODULE_5_prop_types__","__WEBPACK_IMPORTED_MODULE_5_prop_types___default","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__","__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default","__WEBPACK_IMPORTED_MODULE_7__action_bar__","__WEBPACK_IMPORTED_MODULE_8__components_avatar__","__WEBPACK_IMPORTED_MODULE_9__components_permalink__","__WEBPACK_IMPORTED_MODULE_10__components_icon_button__","887","ActionBar","__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__","__WEBPACK_IMPORTED_MODULE_6_react_intl__","edit_profile","pins","follow_requests","favourites","lists","blocks","domain_blocks","mutes","menu","895","Search","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__","__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default","SearchPopout","extraInformation","handleClear","submitted","onClear","handleFocus","onShow","handleBlur","hasValue","980","__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__","__WEBPACK_IMPORTED_MODULE_2__initial_state__","981","__WEBPACK_IMPORTED_MODULE_1__actions_search__","__WEBPACK_IMPORTED_MODULE_2__components_search__","982","__WEBPACK_IMPORTED_MODULE_1__components_search_results__","results","983","SearchResults","__WEBPACK_IMPORTED_MODULE_7__containers_account_container__","__WEBPACK_IMPORTED_MODULE_8__containers_status_container__","__WEBPACK_IMPORTED_MODULE_10__components_hashtag__","accounts","statuses","hashtags","count","statusId","hashtag","984","__WEBPACK_IMPORTED_MODULE_2_react_sparklines__","__WEBPACK_IMPORTED_MODULE_3_react_router_dom__","__WEBPACK_IMPORTED_MODULE_5__utils_numbers__","Hashtag","rawCount","day","fill","985","exports","root","factory","__WEBPACK_EXTERNAL_MODULE_1__","modules","moduleId","installedModules","l","getter","o","configurable","enumerable","__esModule","property","p","s","NODE_ENV","REACT_ELEMENT_TYPE","Symbol","for","isValidElement","$$typeof","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","cachedSetTimeout","runClearTimeout","marker","cachedClearTimeout","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","timeout","len","run","Item","array","nextTick","browser","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","default","makeEmptyFunction","arg","emptyFunction","thatReturns","thatReturnsFalse","thatReturnsTrue","thatReturnsNull","thatReturnsThis","thatReturnsArgument","invariant","condition","format","f","validateFormat","argIndex","framesToPop","warning","printWarning","console","_mean","_mean2","dataMean","sqDiff","pow","avgSqDiff","sqrt","_interopRequireDefault","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","writable","setPrototypeOf","SparklinesText","SparklinesNormalBand","SparklinesReferenceLine","SparklinesSpots","SparklinesBars","SparklinesCurve","SparklinesLine","Sparklines","_createClass","defineProperties","descriptor","protoProps","staticProps","_propTypes","_propTypes2","_react","_react2","_SparklinesText","_SparklinesText2","_SparklinesLine","_SparklinesLine2","_SparklinesCurve","_SparklinesCurve2","_SparklinesBars","_SparklinesBars2","_SparklinesSpots","_SparklinesSpots2","_SparklinesReferenceLine","_SparklinesReferenceLine2","_SparklinesNormalBand","_SparklinesNormalBand2","_dataToPoints","_dataToPoints2","_PureComponent","getPrototypeOf","limit","svgWidth","svgHeight","preserveAspectRatio","margin","points","svgOpts","viewBox","Children","children","child","cloneElement","onMouseMove","ReactPropTypesSecret","checkPropTypes","throwOnDirectAccess","getIteratorFn","maybeIterable","iteratorFn","ITERATOR_SYMBOL","FAUX_ITERATOR_SYMBOL","is","PropTypeError","stack","createChainableTypeChecker","validate","checkType","propName","componentName","location","propFullName","secret","ANONYMOUS","cacheKey","manualPropTypeCallCache","manualPropTypeWarningCount","chainedCheckType","bind","createPrimitiveTypeChecker","expectedType","propValue","getPropType","getPreciseType","createArrayOfTypeChecker","typeChecker","isArray","createInstanceTypeChecker","expectedClass","expectedClassName","getClassName","createEnumTypeChecker","expectedValues","JSON","stringify","createObjectOfTypeChecker","propType","createUnionTypeChecker","arrayOfTypeCheckers","checker","getPostfixForTypeWarning","createShapeTypeChecker","shapeTypes","isNode","every","step","iterator","entries","next","done","entry","isSymbol","RegExp","ReactPropTypes","symbol","any","arrayOf","objectOf","oneOf","oneOfType","shape","PropTypes","typeSpecs","getStack","typeSpecName","ex","loggedTypeFailures","shim","getShim","point","fontSize","fontFamily","linePoints","closePolyPoints","fillPoints","lineStyle","stroke","strokeWidth","strokeLinejoin","strokeLinecap","fillStyle","fillOpacity","pointerEvents","tooltips","cx","cy","r","_props$divisor","divisor","prev","curve","res","barWidth","marginWidth","sign","spotColors","startSpot","endSpot","lastDirection","-1","0","1","_dataProcessing","dataProcessing","newObj","ypoints","x1","y1","x2","y2","strokeOpacity","strokeDasharray","variance","stdev","median","midRange","avg","mean","_min2","_min3","_mean3","_midRange2","_midRange3","_median2","_median3","_stdev2","_stdev3","_variance2","_variance3","_min","_max","_max2","sq","_stdev","dataStdev","_ref$width","_ref$height","_ref$margin","_ref$max","_ref$min","vfactor","hfactor"],"mappings":"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","file":"features/compose.js","sourcesContent":["webpackJsonp([2],{\n\n/***/ 277:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_status__ = __webpack_require__(158);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_interactions__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_statuses__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__actions_mutes__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__actions_reports__ = __webpack_require__(157);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__actions_alerts__ = __webpack_require__(33);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n  deleteConfirm: {\n    'id': 'confirmations.delete.confirm',\n    'defaultMessage': 'Delete'\n  },\n  deleteMessage: {\n    'id': 'confirmations.delete.message',\n    'defaultMessage': 'Are you sure you want to delete this status?'\n  },\n  redraftConfirm: {\n    'id': 'confirmations.redraft.confirm',\n    'defaultMessage': 'Delete & redraft'\n  },\n  redraftMessage: {\n    'id': 'confirmations.redraft.message',\n    'defaultMessage': 'Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.'\n  },\n  blockConfirm: {\n    'id': 'confirmations.block.confirm',\n    'defaultMessage': 'Block'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getStatus = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"e\" /* makeGetStatus */])();\n\n  var mapStateToProps = function mapStateToProps(state, props) {\n    return {\n      status: getStatus(state, props.id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var intl = _ref.intl;\n  return {\n    onReply: function onReply(status, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"T\" /* replyCompose */])(status, router));\n    },\n    onModalReblog: function onModalReblog(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"o\" /* reblog */])(status));\n    },\n    onReblog: function onReblog(status, e) {\n      if (status.get('reblogged')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"r\" /* unreblog */])(status));\n      } else {\n        if (e.shiftKey || !__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"b\" /* boostModal */]) {\n          this.onModalReblog(status);\n        } else {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('BOOST', { status: status, onReblog: this.onModalReblog }));\n        }\n      }\n    },\n    onFavourite: function onFavourite(status) {\n      if (status.get('favourited')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"p\" /* unfavourite */])(status));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"k\" /* favourite */])(status));\n      }\n    },\n    onPin: function onPin(status) {\n      if (status.get('pinned')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"q\" /* unpin */])(status));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_interactions__[\"n\" /* pin */])(status));\n      }\n    },\n    onEmbed: function onEmbed(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('EMBED', {\n        url: status.get('url'),\n        onError: function onError(error) {\n          return dispatch(Object(__WEBPACK_IMPORTED_MODULE_14__actions_alerts__[\"e\" /* showAlertForError */])(error));\n        }\n      }));\n    },\n    onDelete: function onDelete(status) {\n      var withRedraft = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n      if (!__WEBPACK_IMPORTED_MODULE_13__initial_state__[\"d\" /* deleteModal */]) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"g\" /* deleteStatus */])(status.get('id'), withRedraft));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n          message: intl.formatMessage(withRedraft ? messages.redraftMessage : messages.deleteMessage),\n          confirm: intl.formatMessage(withRedraft ? messages.redraftConfirm : messages.deleteConfirm),\n          onConfirm: function onConfirm() {\n            return dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"g\" /* deleteStatus */])(status.get('id'), withRedraft));\n          }\n        }));\n      }\n    },\n    onDirect: function onDirect(account, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"N\" /* directCompose */])(account, router));\n    },\n    onMention: function onMention(account, router) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_compose__[\"R\" /* mentionCompose */])(account, router));\n    },\n    onOpenMedia: function onOpenMedia(media, index) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('MEDIA', { media: media, index: index }));\n    },\n    onOpenVideo: function onOpenVideo(media, time) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('VIDEO', { media: media, time: time }));\n    },\n    onBlock: function onBlock(account) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_11__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n        message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"b\" /* FormattedMessage */], {\n          id: 'confirmations.block.message',\n          defaultMessage: 'Are you sure you want to block {name}?',\n          values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n        }),\n        confirm: intl.formatMessage(messages.blockConfirm),\n        onConfirm: function onConfirm() {\n          return dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n        }\n      }));\n    },\n    onReport: function onReport(status) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_10__actions_reports__[\"k\" /* initReport */])(status.get('account'), status));\n    },\n    onMute: function onMute(account) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_9__actions_mutes__[\"g\" /* initMuteModal */])(account));\n    },\n    onMuteConversation: function onMuteConversation(status) {\n      if (status.get('muted')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"l\" /* unmuteStatus */])(status.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"j\" /* muteStatus */])(status.get('id')));\n      }\n    },\n    onToggleHidden: function onToggleHidden(status) {\n      if (status.get('hidden')) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"k\" /* revealStatus */])(status.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_statuses__[\"i\" /* hideStatus */])(status.get('id')));\n      }\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_status__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 293:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ComposeForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__character_counter__ = __webpack_require__(294);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_button__ = __webpack_require__(100);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__ = __webpack_require__(295);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__ = __webpack_require__(297);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__ = __webpack_require__(302);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__containers_spoiler_button_container__ = __webpack_require__(304);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_privacy_dropdown_container__ = __webpack_require__(306);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__containers_sensitive_button_container__ = __webpack_require__(308);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__containers_emoji_picker_dropdown_container__ = __webpack_require__(309);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__containers_upload_form_container__ = __webpack_require__(311);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__containers_warning_container__ = __webpack_require__(317);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__is_mobile__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_stringz__ = __webpack_require__(99);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_21_stringz__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar allowedAroundShortCode = '><\\x85 \\xA0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\t\\n\\x0B\\f\\r';\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"f\" /* defineMessages */])({\n  placeholder: {\n    'id': 'compose_form.placeholder',\n    'defaultMessage': 'What is on your mind?'\n  },\n  spoiler_placeholder: {\n    'id': 'compose_form.spoiler_placeholder',\n    'defaultMessage': 'Write your warning here'\n  },\n  publish: {\n    'id': 'compose_form.publish',\n    'defaultMessage': 'Toot'\n  },\n  publishLoud: {\n    'id': 'compose_form.publish_loud',\n    'defaultMessage': '{publish}!'\n  }\n});\n\nvar ComposeForm = Object(__WEBPACK_IMPORTED_MODULE_12_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ComposeForm, _ImmutablePureCompone);\n\n  function ComposeForm() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ComposeForm);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n      _this.props.onChange(e.target.value);\n    }, _this.handleKeyDown = function (e) {\n      if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n        _this.handleSubmit();\n      }\n    }, _this.handleSubmit = function () {\n      if (_this.props.text !== _this.autosuggestTextarea.textarea.value) {\n        // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n        // Update the state to match the current text\n        _this.props.onChange(_this.autosuggestTextarea.textarea.value);\n      }\n\n      // Submit disabled:\n      var _this$props = _this.props,\n          is_submitting = _this$props.is_submitting,\n          is_uploading = _this$props.is_uploading,\n          anyMedia = _this$props.anyMedia;\n\n      var fulltext = [_this.props.spoiler_text, _this.props.text].join('');\n\n      if (is_submitting || is_uploading || Object(__WEBPACK_IMPORTED_MODULE_21_stringz__[\"length\"])(fulltext) > __WEBPACK_IMPORTED_MODULE_22__initial_state__[\"h\" /* maxChars */] || fulltext.length !== 0 && fulltext.trim().length === 0 && !anyMedia) {\n        return;\n      }\n\n      _this.props.onSubmit();\n    }, _this.onSuggestionsClearRequested = function () {\n      _this.props.onClearSuggestions();\n    }, _this.onSuggestionsFetchRequested = function (token) {\n      _this.props.onFetchSuggestions(token);\n    }, _this.onSuggestionSelected = function (tokenStart, token, value) {\n      _this.props.onSuggestionSelected(tokenStart, token, value);\n    }, _this.handleChangeSpoilerText = function (e) {\n      _this.props.onChangeSpoilerText(e.target.value);\n    }, _this.setAutosuggestTextarea = function (c) {\n      _this.autosuggestTextarea = c;\n    }, _this.setSpoilerText = function (c) {\n      _this.spoilerText = c;\n    }, _this.handleEmojiPick = function (data) {\n      var text = _this.props.text;\n\n      var position = _this.autosuggestTextarea.textarea.selectionStart;\n      var needsSpace = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]);\n\n      _this.props.onPickEmoji(position, data, needsSpace);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ComposeForm.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n    // This statement does several things:\n    // - If we're beginning a reply, and,\n    //     - Replying to zero or one users, places the cursor at the end of the textbox.\n    //     - Replying to more than one user, selects any usernames past the first;\n    //       this provides a convenient shortcut to drop everyone else from the conversation.\n    if (this.props.focusDate !== prevProps.focusDate) {\n      var selectionEnd = void 0,\n          selectionStart = void 0;\n\n      if (this.props.preselectDate !== prevProps.preselectDate) {\n        selectionEnd = this.props.text.length;\n        selectionStart = this.props.text.search(/\\s/) + 1;\n      } else if (typeof this.props.caretPosition === 'number') {\n        selectionStart = this.props.caretPosition;\n        selectionEnd = this.props.caretPosition;\n      } else {\n        selectionEnd = this.props.text.length;\n        selectionStart = selectionEnd;\n      }\n\n      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n      this.autosuggestTextarea.textarea.focus();\n    } else if (prevProps.is_submitting && !this.props.is_submitting) {\n      this.autosuggestTextarea.textarea.focus();\n    } else if (this.props.spoiler !== prevProps.spoiler) {\n      if (this.props.spoiler) {\n        this.spoilerText.focus();\n      } else {\n        this.autosuggestTextarea.textarea.focus();\n      }\n    }\n  };\n\n  ComposeForm.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        onPaste = _props.onPaste,\n        showSearch = _props.showSearch,\n        anyMedia = _props.anyMedia;\n\n    var disabled = this.props.is_submitting;\n    var text = [this.props.spoiler_text, this.props.text].join('');\n    var disabledButton = disabled || this.props.is_uploading || Object(__WEBPACK_IMPORTED_MODULE_21_stringz__[\"length\"])(text) > __WEBPACK_IMPORTED_MODULE_22__initial_state__[\"h\" /* maxChars */] || text.length !== 0 && text.trim().length === 0 && !anyMedia;\n    var publishText = '';\n\n    if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n      publishText = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        className: 'compose-form__publish-private'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-lock'\n      }), ' ', intl.formatMessage(messages.publish));\n    } else {\n      publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_18__containers_warning_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__containers_reply_indicator_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'spoiler-input ' + (this.props.spoiler ? 'spoiler-input--visible' : '')\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.spoiler_placeholder)), __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('input', { placeholder: intl.formatMessage(messages.spoiler_placeholder), value: this.props.spoiler_text, onChange: this.handleChangeSpoilerText, onKeyDown: this.handleKeyDown, type: 'text', className: 'spoiler-input__input', id: 'cw-spoiler-input', ref: this.setSpoilerText }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__autosuggest-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__components_autosuggest_textarea__[\"a\" /* default */], {\n      ref: this.setAutosuggestTextarea,\n      placeholder: intl.formatMessage(messages.placeholder),\n      disabled: disabled,\n      value: this.props.text,\n      onChange: this.handleChange,\n      suggestions: this.props.suggestions,\n      onKeyDown: this.handleKeyDown,\n      onSuggestionsFetchRequested: this.onSuggestionsFetchRequested,\n      onSuggestionsClearRequested: this.onSuggestionsClearRequested,\n      onSuggestionSelected: this.onSuggestionSelected,\n      onPaste: onPaste,\n      autoFocus: !showSearch && !Object(__WEBPACK_IMPORTED_MODULE_19__is_mobile__[\"b\" /* isMobile */])(window.innerWidth)\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_16__containers_emoji_picker_dropdown_container__[\"a\" /* default */], {\n      onPickEmoji: this.handleEmojiPick\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__modifiers'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_17__containers_upload_form_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__buttons-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__buttons'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_upload_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_privacy_dropdown_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_15__containers_sensitive_button_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_13__containers_spoiler_button_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'character-counter__wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__character_counter__[\"a\" /* default */], {\n      max: __WEBPACK_IMPORTED_MODULE_22__initial_state__[\"h\" /* maxChars */],\n      text: text\n    }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__publish'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__publish-button-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_button__[\"a\" /* default */], {\n      text: publishText,\n      onClick: this.handleSubmit,\n      disabled: disabledButton,\n      block: true\n    }))));\n  };\n\n  return ComposeForm;\n}(__WEBPACK_IMPORTED_MODULE_20_react_immutable_pure_component___default.a), _class2.propTypes = {\n  intl: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.object.isRequired,\n  text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string.isRequired,\n  suggestion_token: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  suggestions: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.list,\n  spoiler: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  privacy: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  spoiler_text: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string,\n  focusDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n  caretPosition: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number,\n  preselectDate: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.instanceOf(Date),\n  is_submitting: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  is_uploading: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  onChange: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onSubmit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onClearSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onFetchSuggestions: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onChangeSpoilerText: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onPaste: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  onPickEmoji: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired,\n  showSearch: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool,\n  anyMedia: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool\n}, _class2.defaultProps = {\n  showSearch: false\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 294:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return CharacterCounter; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz__ = __webpack_require__(99);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_stringz___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_stringz__);\n\n\n\n\n\n\n\n\nvar CharacterCounter = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(CharacterCounter, _React$PureComponent);\n\n  function CharacterCounter() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, CharacterCounter);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  CharacterCounter.prototype.checkRemainingText = function checkRemainingText(diff) {\n    if (diff < 0) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        className: 'character-counter character-counter--over'\n      }, void 0, diff);\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      className: 'character-counter'\n    }, void 0, diff);\n  };\n\n  CharacterCounter.prototype.render = function render() {\n    var diff = this.props.max - Object(__WEBPACK_IMPORTED_MODULE_5_stringz__[\"length\"])(this.props.text);\n    return this.checkRemainingText(diff);\n  };\n\n  return CharacterCounter;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 295:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__ = __webpack_require__(296);\n\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getStatus = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"e\" /* makeGetStatus */])();\n\n  var mapStateToProps = function mapStateToProps(state) {\n    return {\n      status: getStatus(state, state.getIn(['compose', 'in_reply_to']))\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onCancel: function onCancel() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_compose__[\"E\" /* cancelReplyCompose */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_3__components_reply_indicator__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 296:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ReplyIndicator; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__rtl__ = __webpack_require__(98);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  cancel: {\n    'id': 'reply_indicator.cancel',\n    'defaultMessage': 'Cancel'\n  }\n});\n\nvar ReplyIndicator = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ReplyIndicator, _ImmutablePureCompone);\n\n  function ReplyIndicator() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ReplyIndicator);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleClick = function () {\n      _this.props.onCancel();\n    }, _this.handleAccountClick = function (e) {\n      if (e.button === 0) {\n        e.preventDefault();\n        _this.context.router.history.push('/accounts/' + _this.props.status.getIn(['account', 'id']));\n      }\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ReplyIndicator.prototype.render = function render() {\n    var _props = this.props,\n        status = _props.status,\n        intl = _props.intl;\n\n\n    if (!status) {\n      return null;\n    }\n\n    var content = { __html: status.get('contentHtml') };\n    var style = {\n      direction: Object(__WEBPACK_IMPORTED_MODULE_12__rtl__[\"a\" /* isRtl */])(status.get('search_index')) ? 'rtl' : 'ltr'\n    };\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__header'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__cancel'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_icon_button__[\"a\" /* default */], {\n      title: intl.formatMessage(messages.cancel),\n      icon: 'times',\n      onClick: this.handleClick,\n      inverted: true\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n      href: status.getIn(['account', 'url']),\n      onClick: this.handleAccountClick,\n      className: 'reply-indicator__display-name'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__display-avatar'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_avatar__[\"a\" /* default */], {\n      account: status.get('account'),\n      size: 24\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_display_name__[\"a\" /* default */], {\n      account: status.get('account')\n    }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'reply-indicator__content',\n      style: style,\n      dangerouslySetInnerHTML: content\n    }));\n  };\n\n  return ReplyIndicator;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class2.contextTypes = {\n  router: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object\n}, _class2.propTypes = {\n  status: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map,\n  onCancel: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 297:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestTextarea; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__ = __webpack_require__(298);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__ = __webpack_require__(300);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__rtl__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__ = __webpack_require__(301);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_classnames__);\n\n\n\n\n\n\nvar _class, _temp2;\n\n\n\n\n\n\n\n\n\n\n\nvar textAtCursorMatchesToken = function textAtCursorMatchesToken(str, caretPosition) {\n  var word = void 0;\n\n  var left = str.slice(0, caretPosition).search(/\\S+$/);\n  var right = str.slice(caretPosition).search(/\\s/);\n\n  if (right < 0) {\n    word = str.slice(left);\n  } else {\n    word = str.slice(left, right + caretPosition);\n  }\n\n  if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n    return [null, null];\n  }\n\n  word = word.trim().toLowerCase();\n\n  if (word.length > 0) {\n    return [left + 1, word];\n  } else {\n    return [null, null];\n  }\n};\n\nvar AutosuggestTextarea = (_temp2 = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(AutosuggestTextarea, _ImmutablePureCompone);\n\n  function AutosuggestTextarea() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestTextarea);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n      suggestionsHidden: false,\n      selectedSuggestion: 0,\n      lastToken: null,\n      tokenStart: 0\n    }, _this.onChange = function (e) {\n      var _textAtCursorMatchesT = textAtCursorMatchesToken(e.target.value, e.target.selectionStart),\n          tokenStart = _textAtCursorMatchesT[0],\n          token = _textAtCursorMatchesT[1];\n\n      if (token !== null && _this.state.lastToken !== token) {\n        _this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart: tokenStart });\n        _this.props.onSuggestionsFetchRequested(token);\n      } else if (token === null) {\n        _this.setState({ lastToken: null });\n        _this.props.onSuggestionsClearRequested();\n      }\n\n      _this.props.onChange(e);\n    }, _this.onKeyDown = function (e) {\n      var _this$props = _this.props,\n          suggestions = _this$props.suggestions,\n          disabled = _this$props.disabled;\n      var _this$state = _this.state,\n          selectedSuggestion = _this$state.selectedSuggestion,\n          suggestionsHidden = _this$state.suggestionsHidden;\n\n\n      if (disabled) {\n        e.preventDefault();\n        return;\n      }\n\n      if (e.which === 229 || e.isComposing) {\n        // Ignore key events during text composition\n        // e.key may be a name of the physical key even in this case (e.x. Safari / Chrome on Mac)\n        return;\n      }\n\n      switch (e.key) {\n        case 'Escape':\n          if (suggestions.size === 0 || suggestionsHidden) {\n            document.querySelector('.ui').parentElement.focus();\n          } else {\n            e.preventDefault();\n            _this.setState({ suggestionsHidden: true });\n          }\n\n          break;\n        case 'ArrowDown':\n          if (suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            _this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n          }\n\n          break;\n        case 'ArrowUp':\n          if (suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            _this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n          }\n\n          break;\n        case 'Enter':\n        case 'Tab':\n          // Select suggestion\n          if (_this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n            e.preventDefault();\n            e.stopPropagation();\n            _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestions.get(selectedSuggestion));\n          }\n\n          break;\n      }\n\n      if (e.defaultPrevented || !_this.props.onKeyDown) {\n        return;\n      }\n\n      _this.props.onKeyDown(e);\n    }, _this.onBlur = function () {\n      _this.setState({ suggestionsHidden: true });\n    }, _this.onSuggestionClick = function (e) {\n      var suggestion = _this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n      e.preventDefault();\n      _this.props.onSuggestionSelected(_this.state.tokenStart, _this.state.lastToken, suggestion);\n      _this.textarea.focus();\n    }, _this.setTextarea = function (c) {\n      _this.textarea = c;\n    }, _this.onPaste = function (e) {\n      if (e.clipboardData && e.clipboardData.files.length === 1) {\n        _this.props.onPaste(e.clipboardData.files);\n        e.preventDefault();\n      }\n    }, _this.renderSuggestion = function (suggestion, i) {\n      var selectedSuggestion = _this.state.selectedSuggestion;\n\n      var inner = void 0,\n          key = void 0;\n\n      if ((typeof suggestion === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(suggestion)) === 'object') {\n        inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__autosuggest_emoji__[\"a\" /* default */], {\n          emoji: suggestion\n        });\n        key = suggestion.id;\n      } else if (suggestion[0] === '#') {\n        inner = suggestion;\n        key = suggestion;\n      } else {\n        inner = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__features_compose_containers_autosuggest_account_container__[\"a\" /* default */], {\n          id: suggestion\n        });\n        key = suggestion;\n      }\n\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        role: 'button',\n        tabIndex: '0',\n        'data-index': i,\n        className: __WEBPACK_IMPORTED_MODULE_13_classnames___default()('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion }),\n        onMouseDown: _this.onSuggestionClick\n      }, key, inner);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  AutosuggestTextarea.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n    if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n      this.setState({ suggestionsHidden: false });\n    }\n  };\n\n  AutosuggestTextarea.prototype.render = function render() {\n    var _props = this.props,\n        value = _props.value,\n        suggestions = _props.suggestions,\n        disabled = _props.disabled,\n        placeholder = _props.placeholder,\n        onKeyUp = _props.onKeyUp,\n        autoFocus = _props.autoFocus;\n    var suggestionsHidden = this.state.suggestionsHidden;\n\n    var style = { direction: 'ltr' };\n\n    if (Object(__WEBPACK_IMPORTED_MODULE_10__rtl__[\"a\" /* isRtl */])(value)) {\n      style.direction = 'rtl';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-textarea'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, placeholder), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12_react_textarea_autosize__[\"a\" /* default */], {\n      inputRef: this.setTextarea,\n      className: 'autosuggest-textarea__textarea',\n      disabled: disabled,\n      placeholder: placeholder,\n      autoFocus: autoFocus,\n      value: value,\n      onChange: this.onChange,\n      onKeyDown: this.onKeyDown,\n      onKeyUp: onKeyUp,\n      onBlur: this.onBlur,\n      onPaste: this.onPaste,\n      style: style,\n      'aria-autocomplete': 'list'\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-textarea__suggestions ' + (suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible')\n    }, void 0, suggestions.map(this.renderSuggestion)));\n  };\n\n  return AutosuggestTextarea;\n}(__WEBPACK_IMPORTED_MODULE_11_react_immutable_pure_component___default.a), _class.propTypes = {\n  value: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n  suggestions: __WEBPACK_IMPORTED_MODULE_8_react_immutable_proptypes___default.a.list,\n  disabled: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool,\n  placeholder: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.string,\n  onSuggestionSelected: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onSuggestionsClearRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onSuggestionsFetchRequested: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onChange: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  onKeyUp: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n  onKeyDown: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func,\n  onPaste: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.func.isRequired,\n  autoFocus: __WEBPACK_IMPORTED_MODULE_9_prop_types___default.a.bool\n}, _class.defaultProps = {\n  autoFocus: true\n}, _temp2);\n\n\n/***/ }),\n\n/***/ 298:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__ = __webpack_require__(299);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__selectors__ = __webpack_require__(67);\n\n\n\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getAccount = Object(__WEBPACK_IMPORTED_MODULE_2__selectors__[\"c\" /* makeGetAccount */])();\n\n  var mapStateToProps = function mapStateToProps(state, _ref) {\n    var id = _ref.id;\n    return {\n      account: getAccount(state, id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(makeMapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_autosuggest_account__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 299:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestAccount; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar AutosuggestAccount = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestAccount, _ImmutablePureCompone);\n\n  function AutosuggestAccount() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestAccount);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  AutosuggestAccount.prototype.render = function render() {\n    var account = this.props.account;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-account'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-account-icon'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_avatar__[\"a\" /* default */], {\n      account: account,\n      size: 18\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_display_name__[\"a\" /* default */], {\n      account: account\n    }));\n  };\n\n  return AutosuggestAccount;\n}(__WEBPACK_IMPORTED_MODULE_8_react_immutable_pure_component___default.a), _class.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_7_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 300:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AutosuggestEmoji; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__ = __webpack_require__(161);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light__);\n\n\n\n\n\n\n\n\nvar assetHost = process.env.CDN_HOST || '';\n\nvar AutosuggestEmoji = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AutosuggestEmoji, _React$PureComponent);\n\n  function AutosuggestEmoji() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, AutosuggestEmoji);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  AutosuggestEmoji.prototype.render = function render() {\n    var emoji = this.props.emoji;\n\n    var url = void 0;\n\n    if (emoji.custom) {\n      url = emoji.imageUrl;\n    } else {\n      var mapping = __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native] || __WEBPACK_IMPORTED_MODULE_5__features_emoji_emoji_unicode_mapping_light___default.a[emoji.native.replace(/\\uFE0F$/, '')];\n\n      if (!mapping) {\n        return null;\n      }\n\n      url = assetHost + '/emoji/' + mapping.filename + '.svg';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'autosuggest-emoji'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n      className: 'emojione',\n      src: url,\n      alt: emoji.native || emoji.colons\n    }), emoji.colons);\n  };\n\n  return AutosuggestEmoji;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(35)))\n\n/***/ }),\n\n/***/ 301:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__);\n\n\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n  subClass.prototype = Object.create(superClass.prototype);\n  subClass.prototype.constructor = subClass;\n  subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n\n  return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n  'min-height': '0',\n  'max-height': 'none',\n  height: '0',\n  visibility: 'hidden',\n  overflow: 'hidden',\n  position: 'absolute',\n  'z-index': '-1000',\n  top: '0',\n  right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (minRows === void 0) {\n    minRows = null;\n  }\n\n  if (maxRows === void 0) {\n    maxRows = null;\n  }\n\n  if (hiddenTextarea.parentNode === null) {\n    document.body.appendChild(hiddenTextarea);\n  } // Copy all CSS properties that have an impact on the height of the content in\n  // the textbox\n\n\n  var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n  if (nodeStyling === null) {\n    return null;\n  }\n\n  var paddingSize = nodeStyling.paddingSize,\n      borderSize = nodeStyling.borderSize,\n      boxSizing = nodeStyling.boxSizing,\n      sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n  // text-lines will not calculated properly as the shadow will technically be\n  // narrower for content\n\n  Object.keys(sizingStyle).forEach(function (key) {\n    hiddenTextarea.style[key] = sizingStyle[key];\n  });\n  Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n    hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n  });\n  hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n  var minHeight = -Infinity;\n  var maxHeight = Infinity;\n  var height = hiddenTextarea.scrollHeight;\n\n  if (boxSizing === 'border-box') {\n    // border-box: add border, since height = content + padding + border\n    height = height + borderSize;\n  } else if (boxSizing === 'content-box') {\n    // remove padding, since height = content\n    height = height - paddingSize;\n  } // measure height of a textarea with a single row\n\n\n  hiddenTextarea.value = 'x';\n  var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n  if (minRows !== null || maxRows !== null) {\n    if (minRows !== null) {\n      minHeight = singleRowHeight * minRows;\n\n      if (boxSizing === 'border-box') {\n        minHeight = minHeight + paddingSize + borderSize;\n      }\n\n      height = Math.max(minHeight, height);\n    }\n\n    if (maxRows !== null) {\n      maxHeight = singleRowHeight * maxRows;\n\n      if (boxSizing === 'border-box') {\n        maxHeight = maxHeight + paddingSize + borderSize;\n      }\n\n      height = Math.min(maxHeight, height);\n    }\n  }\n\n  var rowCount = Math.floor(height / singleRowHeight);\n  return {\n    height: height,\n    minHeight: minHeight,\n    maxHeight: maxHeight,\n    rowCount: rowCount\n  };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (useCache && computedStyleCache[uid]) {\n    return computedStyleCache[uid];\n  }\n\n  var style = window.getComputedStyle(node);\n\n  if (style === null) {\n    return null;\n  }\n\n  var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n    obj[name] = style.getPropertyValue(name);\n    return obj;\n  }, {});\n  var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n  // so we need to add manually padding and border widths\n\n  if (isIE && boxSizing === 'border-box') {\n    sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n  }\n\n  var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n  var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n  var nodeInfo = {\n    sizingStyle: sizingStyle,\n    paddingSize: paddingSize,\n    borderSize: borderSize,\n    boxSizing: boxSizing\n  };\n\n  if (useCache) {\n    computedStyleCache[uid] = nodeInfo;\n  }\n\n  return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n  return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n  if (seed === void 0) {\n    seed = 0;\n  }\n\n  return function () {\n    return ++seed;\n  };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ?  true ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n  _inheritsLoose(TextareaAutosize, _React$Component);\n\n  function TextareaAutosize(props) {\n    var _this;\n\n    _this = _React$Component.call(this, props) || this;\n    _this._resizeLock = false;\n\n    _this._onRootDOMNode = function (node) {\n      _this._rootDOMNode = node;\n\n      if (_this.props.inputRef) {\n        _this.props.inputRef(node);\n      }\n    };\n\n    _this._onChange = function (event) {\n      if (!_this._controlled) {\n        _this._resizeComponent();\n      }\n\n      _this.props.onChange(event);\n    };\n\n    _this._resizeComponent = function (callback) {\n      if (callback === void 0) {\n        callback = noop;\n      }\n\n      if (typeof _this._rootDOMNode === 'undefined') {\n        callback();\n        return;\n      }\n\n      var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n      if (nodeHeight === null) {\n        callback();\n        return;\n      }\n\n      var height = nodeHeight.height,\n          minHeight = nodeHeight.minHeight,\n          maxHeight = nodeHeight.maxHeight,\n          rowCount = nodeHeight.rowCount;\n      _this.rowCount = rowCount;\n\n      if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n        _this.setState({\n          height: height,\n          minHeight: minHeight,\n          maxHeight: maxHeight\n        }, callback);\n\n        return;\n      }\n\n      callback();\n    };\n\n    _this.state = {\n      height: props.style && props.style.height || 0,\n      minHeight: -Infinity,\n      maxHeight: Infinity\n    };\n    _this._uid = uid();\n    _this._controlled = typeof props.value === 'string';\n    return _this;\n  }\n\n  var _proto = TextareaAutosize.prototype;\n\n  _proto.render = function render() {\n    var _props = this.props,\n        _minRows = _props.minRows,\n        _maxRows = _props.maxRows,\n        _onHeightChange = _props.onHeightChange,\n        _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n        _inputRef = _props.inputRef,\n        props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n    props.style = _extends({}, props.style, {\n      height: this.state.height\n    });\n    var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n    if (maxHeight < this.state.height) {\n      props.style.overflow = 'hidden';\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(\"textarea\", _extends({}, props, {\n      onChange: this._onChange,\n      ref: this._onRootDOMNode\n    }));\n  };\n\n  _proto.componentDidMount = function componentDidMount() {\n    var _this2 = this;\n\n    this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n    // causing competing rerenders (due to setState in the listener) in React.\n    // More can be found here - facebook/react#6324\n\n\n    this._resizeListener = function () {\n      if (_this2._resizeLock) {\n        return;\n      }\n\n      _this2._resizeLock = true;\n\n      _this2._resizeComponent(function () {\n        return _this2._resizeLock = false;\n      });\n    };\n\n    window.addEventListener('resize', this._resizeListener);\n  };\n\n  _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n    var _this3 = this;\n\n    this._clearNextFrame();\n\n    this._onNextFrameActionId = onNextFrame(function () {\n      return _this3._resizeComponent();\n    });\n  };\n\n  _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n    if (this.state.height !== prevState.height) {\n      this.props.onHeightChange(this.state.height, this);\n    }\n  };\n\n  _proto.componentWillUnmount = function componentWillUnmount() {\n    this._clearNextFrame();\n\n    window.removeEventListener('resize', this._resizeListener);\n    purgeCache(this._uid);\n  };\n\n  _proto._clearNextFrame = function _clearNextFrame() {\n    clearNextFrameAction(this._onNextFrameActionId);\n  };\n\n  return TextareaAutosize;\n}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component);\n\nTextareaAutosize.defaultProps = {\n  onChange: noop,\n  onHeightChange: noop,\n  useCacheForDOMMeasurements: false\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (TextareaAutosize);\n\n/***/ }),\n\n/***/ 302:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_button__ = __webpack_require__(303);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    disabled: state.getIn(['compose', 'is_uploading']) || state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(function (m) {\n      return m.get('type') === 'video';\n    }),\n    resetFileKey: state.getIn(['compose', 'resetFileKey'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onSelectFile: function onSelectFile(files) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_button__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 303:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes__);\n\n\n\n\n\nvar _dec, _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"f\" /* defineMessages */])({\n  upload: {\n    'id': 'upload_button.label',\n    'defaultMessage': 'Add media'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var mapStateToProps = function mapStateToProps(state) {\n    return {\n      acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types'])\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar iconStyle = {\n  height: null,\n  lineHeight: '27px'\n};\n\nvar UploadButton = (_dec = Object(__WEBPACK_IMPORTED_MODULE_8_react_redux__[\"connect\"])(makeMapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadButton, _ImmutablePureCompone);\n\n  function UploadButton() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadButton);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleChange = function (e) {\n      if (e.target.files.length > 0) {\n        _this.props.onSelectFile(e.target.files);\n      }\n    }, _this.handleClick = function () {\n      _this.fileElement.click();\n    }, _this.setRef = function (c) {\n      _this.fileElement = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  UploadButton.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        resetFileKey = _props.resetFileKey,\n        disabled = _props.disabled,\n        acceptContentTypes = _props.acceptContentTypes;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload-button'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__components_icon_button__[\"a\" /* default */], {\n      icon: 'camera',\n      title: intl.formatMessage(messages.upload),\n      disabled: disabled,\n      onClick: this.handleClick,\n      className: 'compose-form__upload-button-icon',\n      size: 18,\n      inverted: true,\n      style: iconStyle\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.upload)), __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement('input', {\n      key: resetFileKey,\n      ref: this.setRef,\n      type: 'file',\n      multiple: false,\n      accept: acceptContentTypes.toArray().join(','),\n      onChange: this.handleChange,\n      disabled: disabled,\n      style: { display: 'none' }\n    })));\n  };\n\n  return UploadButton;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n  disabled: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool,\n  onSelectFile: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  style: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object,\n  resetFileKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number,\n  acceptContentTypes: __WEBPACK_IMPORTED_MODULE_10_react_immutable_proptypes___default.a.listOf(__WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string).isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired\n}, _temp2)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 304:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__ = __webpack_require__(305);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(7);\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n  marked: {\n    'id': 'compose_form.spoiler.marked',\n    'defaultMessage': 'Text is hidden behind warning'\n  },\n  unmarked: {\n    'id': 'compose_form.spoiler.unmarked',\n    'defaultMessage': 'Text is not hidden'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n  var intl = _ref.intl;\n  return {\n    label: 'CW',\n    title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n    active: state.getIn(['compose', 'spoiler']),\n    ariaControls: 'cw-spoiler-input'\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onClick: function onClick() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"I\" /* changeComposeSpoilerness */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_text_icon_button__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 305:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return TextIconButton; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n\n\n\n\n\n\nvar TextIconButton = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(TextIconButton, _React$PureComponent);\n\n  function TextIconButton() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TextIconButton);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n      e.preventDefault();\n      _this.props.onClick();\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  TextIconButton.prototype.render = function render() {\n    var _props = this.props,\n        label = _props.label,\n        title = _props.title,\n        active = _props.active,\n        ariaControls = _props.ariaControls;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n      title: title,\n      'aria-label': title,\n      className: 'text-icon-button ' + (active ? 'active' : ''),\n      'aria-expanded': active,\n      onClick: this.handleClick,\n      'aria-controls': ariaControls\n    }, void 0, label);\n  };\n\n  return TextIconButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 306:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__ = __webpack_require__(307);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__is_mobile__ = __webpack_require__(43);\n\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    isModalOpen: state.get('modal').modalType === 'ACTIONS',\n    value: state.getIn(['compose', 'privacy'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(value) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"J\" /* changeComposeVisibility */])(value));\n    },\n\n\n    isUserTouching: __WEBPACK_IMPORTED_MODULE_4__is_mobile__[\"c\" /* isUserTouching */],\n    onModalOpen: function onModalOpen(props) {\n      return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('ACTIONS', props));\n    },\n    onModalClose: function onModalClose() {\n      return dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"c\" /* closeModal */])());\n    }\n\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_privacy_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 307:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return PrivacyDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class2;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  public_short: {\n    'id': 'privacy.public.short',\n    'defaultMessage': 'Public'\n  },\n  public_long: {\n    'id': 'privacy.public.long',\n    'defaultMessage': 'Post to public timelines'\n  },\n  unlisted_short: {\n    'id': 'privacy.unlisted.short',\n    'defaultMessage': 'Unlisted'\n  },\n  unlisted_long: {\n    'id': 'privacy.unlisted.long',\n    'defaultMessage': 'Do not show in public timelines'\n  },\n  private_short: {\n    'id': 'privacy.private.short',\n    'defaultMessage': 'Followers-only'\n  },\n  private_long: {\n    'id': 'privacy.private.long',\n    'defaultMessage': 'Post to followers only'\n  },\n  direct_short: {\n    'id': 'privacy.direct.short',\n    'defaultMessage': 'Direct'\n  },\n  direct_long: {\n    'id': 'privacy.direct.long',\n    'defaultMessage': 'Post to mentioned users only'\n  },\n  change_privacy: {\n    'id': 'privacy.change',\n    'defaultMessage': 'Adjust status privacy'\n  }\n});\n\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_10_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar PrivacyDropdownMenu = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdownMenu, _React$PureComponent);\n\n  function PrivacyDropdownMenu() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdownMenu);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.state = {\n      mounted: false\n    }, _this.handleDocumentClick = function (e) {\n      if (_this.node && !_this.node.contains(e.target)) {\n        _this.props.onClose();\n      }\n    }, _this.handleKeyDown = function (e) {\n      var items = _this.props.items;\n\n      var value = e.currentTarget.getAttribute('data-index');\n      var index = items.findIndex(function (item) {\n        return item.value === value;\n      });\n      var element = void 0;\n\n      switch (e.key) {\n        case 'Escape':\n          _this.props.onClose();\n          break;\n        case 'Enter':\n          _this.handleClick(e);\n          break;\n        case 'ArrowDown':\n          element = _this.node.childNodes[index + 1];\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'ArrowUp':\n          element = _this.node.childNodes[index - 1];\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'Home':\n          element = _this.node.firstChild;\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n        case 'End':\n          element = _this.node.lastChild;\n          if (element) {\n            element.focus();\n            _this.props.onChange(element.getAttribute('data-index'));\n          }\n          break;\n      }\n    }, _this.handleClick = function (e) {\n      var value = e.currentTarget.getAttribute('data-index');\n\n      e.preventDefault();\n\n      _this.props.onClose();\n      _this.props.onChange(value);\n    }, _this.setRef = function (c) {\n      _this.node = c;\n    }, _this.setFocusRef = function (c) {\n      _this.focusedItem = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  PrivacyDropdownMenu.prototype.componentDidMount = function componentDidMount() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n    if (this.focusedItem) this.focusedItem.focus();\n    this.setState({ mounted: true });\n  };\n\n  PrivacyDropdownMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  PrivacyDropdownMenu.prototype.render = function render() {\n    var _this2 = this;\n\n    var mounted = this.state.mounted;\n    var _props = this.props,\n        style = _props.style,\n        items = _props.items,\n        value = _props.value;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_9_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return (\n        // It should not be transformed when mounting because the resulting\n        // size will be used to determine the coordinate of the menu by\n        // react-overlays\n        __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n          'div',\n          { className: 'privacy-dropdown__dropdown', style: Object.assign({}, style, { opacity: opacity, transform: mounted ? 'scale(' + scaleX + ', ' + scaleY + ')' : null }), role: 'listbox', ref: _this2.setRef },\n          items.map(function (item) {\n            return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n              'div',\n              { role: 'option', tabIndex: '0', key: item.value, 'data-index': item.value, onKeyDown: _this2.handleKeyDown, onClick: _this2.handleClick, className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__option', { active: item.value === value }), 'aria-selected': item.value === value, ref: item.value === value ? _this2.setFocusRef : null },\n              __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n                className: 'privacy-dropdown__option__icon'\n              }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n                className: 'fa fa-fw fa-' + item.icon\n              })),\n              __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n                className: 'privacy-dropdown__option__content'\n              }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, item.text), item.meta)\n            );\n          })\n        )\n      );\n    });\n  };\n\n  return PrivacyDropdownMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar PrivacyDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class2 = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PrivacyDropdown, _React$PureComponent2);\n\n  function PrivacyDropdown() {\n    var _temp2, _this3, _ret2;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, PrivacyDropdown);\n\n    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    return _ret2 = (_temp2 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this3), _this3.state = {\n      open: false,\n      placement: null\n    }, _this3.handleToggle = function (_ref2) {\n      var target = _ref2.target;\n\n      if (_this3.props.isUserTouching()) {\n        if (_this3.state.open) {\n          _this3.props.onModalClose();\n        } else {\n          _this3.props.onModalOpen({\n            actions: _this3.options.map(function (option) {\n              return Object.assign({}, option, { active: option.value === _this3.props.value });\n            }),\n            onClick: _this3.handleModalActionClick\n          });\n        }\n      } else {\n        var _target$getBoundingCl = target.getBoundingClientRect(),\n            top = _target$getBoundingCl.top;\n\n        _this3.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n        _this3.setState({ open: !_this3.state.open });\n      }\n    }, _this3.handleModalActionClick = function (e) {\n      e.preventDefault();\n\n      var value = _this3.options[e.currentTarget.getAttribute('data-index')].value;\n\n      _this3.props.onModalClose();\n      _this3.props.onChange(value);\n    }, _this3.handleKeyDown = function (e) {\n      switch (e.key) {\n        case 'Escape':\n          _this3.handleClose();\n          break;\n      }\n    }, _this3.handleClose = function () {\n      _this3.setState({ open: false });\n    }, _this3.handleChange = function (value) {\n      _this3.props.onChange(value);\n    }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret2);\n  }\n\n  PrivacyDropdown.prototype.componentWillMount = function componentWillMount() {\n    var formatMessage = this.props.intl.formatMessage;\n\n\n    this.options = [{ icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) }, { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) }, { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) }, { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) }];\n  };\n\n  PrivacyDropdown.prototype.render = function render() {\n    var _props2 = this.props,\n        value = _props2.value,\n        intl = _props2.intl;\n    var _state = this.state,\n        open = _state.open,\n        placement = _state.placement;\n\n\n    var valueOption = this.options.find(function (item) {\n      return item.value === value;\n    });\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown', { active: open }),\n      onKeyDown: this.handleKeyDown\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__components_icon_button__[\"a\" /* default */], {\n      className: 'privacy-dropdown__value-icon',\n      icon: valueOption.icon,\n      title: intl.formatMessage(messages.change_privacy),\n      size: 18,\n      expanded: open,\n      active: open,\n      inverted: true,\n      onClick: this.handleToggle,\n      style: { height: null, lineHeight: '27px' }\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n      show: open,\n      placement: placement,\n      target: this\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(PrivacyDropdownMenu, {\n      items: this.options,\n      value: value,\n      onClose: this.handleClose,\n      onChange: this.handleChange\n    })));\n  };\n\n  return PrivacyDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class2;\n\n\n\n/***/ }),\n\n/***/ 308:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(7);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n  marked: {\n    'id': 'compose_form.sensitive.marked',\n    'defaultMessage': 'Media is marked as sensitive'\n  },\n  unmarked: {\n    'id': 'compose_form.sensitive.unmarked',\n    'defaultMessage': 'Media is not marked as sensitive'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    visible: state.getIn(['compose', 'media_attachments']).size > 0,\n    active: state.getIn(['compose', 'sensitive']),\n    disabled: state.getIn(['compose', 'spoiler'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onClick: function onClick() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"G\" /* changeComposeSensitivity */])());\n    }\n  };\n};\n\nvar SensitiveButton = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SensitiveButton, _React$PureComponent);\n\n  function SensitiveButton() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SensitiveButton);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  SensitiveButton.prototype.render = function render() {\n    var _props = this.props,\n        visible = _props.visible,\n        active = _props.active,\n        disabled = _props.disabled,\n        onClick = _props.onClick,\n        intl = _props.intl;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { scale: 0.87 },\n      style: { scale: __WEBPACK_IMPORTED_MODULE_10_react_motion_lib_spring___default()(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }\n    }, void 0, function (_ref) {\n      var scale = _ref.scale;\n\n      var icon = active ? 'eye-slash' : 'eye';\n      var className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()('compose-form__sensitive-button', {\n        'compose-form__sensitive-button--visible': visible\n      });\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: className,\n        style: { transform: 'scale(' + scale + ')' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__components_icon_button__[\"a\" /* default */], {\n        className: 'compose-form__sensitive-button__icon',\n        title: intl.formatMessage(active ? messages.marked : messages.unmarked),\n        icon: icon,\n        onClick: onClick,\n        size: 18,\n        active: active,\n        disabled: disabled,\n        style: { lineHeight: null, height: null },\n        inverted: true\n      }));\n    });\n  };\n\n  return SensitiveButton;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_5_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(SensitiveButton)));\n\n/***/ }),\n\n/***/ 309:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__ = __webpack_require__(310);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_settings__ = __webpack_require__(56);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_reselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_reselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_immutable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_immutable__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__actions_emojis__ = __webpack_require__(102);\n\n\n\n\n\n\n\nvar perLine = 8;\nvar lines = 2;\n\nvar DEFAULTS = ['+1', 'grinning', 'kissing_heart', 'heart_eyes', 'laughing', 'stuck_out_tongue_winking_eye', 'sweat_smile', 'joy', 'yum', 'disappointed', 'thinking_face', 'weary', 'sob', 'sunglasses', 'heart', 'ok_hand'];\n\nvar getFrequentlyUsedEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n  return state.getIn(['settings', 'frequentlyUsedEmojis'], Object(__WEBPACK_IMPORTED_MODULE_4_immutable__[\"Map\"])());\n}], function (emojiCounters) {\n  var emojis = emojiCounters.keySeq().sort(function (a, b) {\n    return emojiCounters.get(a) - emojiCounters.get(b);\n  }).reverse().slice(0, perLine * lines).toArray();\n\n  if (emojis.length < DEFAULTS.length) {\n    var uniqueDefaults = DEFAULTS.filter(function (emoji) {\n      return !emojis.includes(emoji);\n    });\n    emojis = emojis.concat(uniqueDefaults.slice(0, DEFAULTS.length - emojis.length));\n  }\n\n  return emojis;\n});\n\nvar getCustomEmojis = Object(__WEBPACK_IMPORTED_MODULE_3_reselect__[\"createSelector\"])([function (state) {\n  return state.get('custom_emojis');\n}], function (emojis) {\n  return emojis.filter(function (e) {\n    return e.get('visible_in_picker');\n  }).sort(function (a, b) {\n    var aShort = a.get('shortcode').toLowerCase();\n    var bShort = b.get('shortcode').toLowerCase();\n\n    if (aShort < bShort) {\n      return -1;\n    } else if (aShort > bShort) {\n      return 1;\n    } else {\n      return 0;\n    }\n  });\n});\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    custom_emojis: getCustomEmojis(state),\n    skinTone: state.getIn(['settings', 'skinTone']),\n    frequentlyUsedEmojis: getFrequentlyUsedEmojis(state)\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var _onPickEmoji = _ref.onPickEmoji;\n  return {\n    onSkinTone: function onSkinTone(skinTone) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_settings__[\"c\" /* changeSetting */])(['skinTone'], skinTone));\n    },\n\n    onPickEmoji: function onPickEmoji(emoji) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_5__actions_emojis__[\"b\" /* useEmoji */])(emoji));\n\n      if (_onPickEmoji) {\n        _onPickEmoji(emoji);\n      }\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_emoji_picker_dropdown__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 310:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return EmojiPickerDropdown; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__ = __webpack_require__(58);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_classnames__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_detect_passive_events__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__emoji_emoji__ = __webpack_require__(73);\n\n\n\n\n\nvar _class3, _class4, _temp4, _class5;\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  emoji: {\n    'id': 'emoji_button.label',\n    'defaultMessage': 'Insert emoji'\n  },\n  emoji_search: {\n    'id': 'emoji_button.search',\n    'defaultMessage': 'Search...'\n  },\n  emoji_not_found: {\n    'id': 'emoji_button.not_found',\n    'defaultMessage': 'No emojos!! (\\u256F\\xB0\\u25A1\\xB0\\uFF09\\u256F\\uFE35 \\u253B\\u2501\\u253B'\n  },\n  custom: {\n    'id': 'emoji_button.custom',\n    'defaultMessage': 'Custom'\n  },\n  recent: {\n    'id': 'emoji_button.recent',\n    'defaultMessage': 'Frequently used'\n  },\n  search_results: {\n    'id': 'emoji_button.search_results',\n    'defaultMessage': 'Search results'\n  },\n  people: {\n    'id': 'emoji_button.people',\n    'defaultMessage': 'People'\n  },\n  nature: {\n    'id': 'emoji_button.nature',\n    'defaultMessage': 'Nature'\n  },\n  food: {\n    'id': 'emoji_button.food',\n    'defaultMessage': 'Food & Drink'\n  },\n  activity: {\n    'id': 'emoji_button.activity',\n    'defaultMessage': 'Activity'\n  },\n  travel: {\n    'id': 'emoji_button.travel',\n    'defaultMessage': 'Travel & Places'\n  },\n  objects: {\n    'id': 'emoji_button.objects',\n    'defaultMessage': 'Objects'\n  },\n  symbols: {\n    'id': 'emoji_button.symbols',\n    'defaultMessage': 'Symbols'\n  },\n  flags: {\n    'id': 'emoji_button.flags',\n    'defaultMessage': 'Flags'\n  }\n});\n\nvar assetHost = process.env.CDN_HOST || '';\nvar EmojiPicker = void 0,\n    Emoji = void 0; // load asynchronously\n\nvar backgroundImageFn = function backgroundImageFn() {\n  return assetHost + '/emoji/sheet_10.png';\n};\nvar listenerOptions = __WEBPACK_IMPORTED_MODULE_9_detect_passive_events___default.a.hasSupport ? { passive: true } : false;\n\nvar categoriesSort = ['recent', 'custom', 'people', 'nature', 'foods', 'activity', 'places', 'objects', 'symbols', 'flags'];\n\nvar ModifierPickerMenu = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPickerMenu, _React$PureComponent);\n\n  function ModifierPickerMenu() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPickerMenu);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.handleClick = function (e) {\n      _this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n    }, _this.handleDocumentClick = function (e) {\n      if (_this.node && !_this.node.contains(e.target)) {\n        _this.props.onClose();\n      }\n    }, _this.setRef = function (c) {\n      _this.node = c;\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  ModifierPickerMenu.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n    if (nextProps.active) {\n      this.attachListeners();\n    } else {\n      this.removeListeners();\n    }\n  };\n\n  ModifierPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    this.removeListeners();\n  };\n\n  ModifierPickerMenu.prototype.attachListeners = function attachListeners() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  ModifierPickerMenu.prototype.removeListeners = function removeListeners() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  ModifierPickerMenu.prototype.render = function render() {\n    var active = this.props.active;\n\n\n    return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { className: 'emoji-picker-dropdown__modifiers__menu', style: { display: active ? 'block' : 'none' }, ref: this.setRef },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 1\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 1,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 2\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 2,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 3\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 3,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 4\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 4,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 5\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 5,\n        backgroundImageFn: backgroundImageFn\n      })),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        onClick: this.handleClick,\n        'data-index': 6\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n        emoji: 'fist',\n        set: 'twitter',\n        size: 22,\n        sheetSize: 32,\n        skin: 6,\n        backgroundImageFn: backgroundImageFn\n      }))\n    );\n  };\n\n  return ModifierPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar ModifierPicker = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ModifierPicker, _React$PureComponent2);\n\n  function ModifierPicker() {\n    var _temp2, _this2, _ret2;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ModifierPicker);\n\n    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    return _ret2 = (_temp2 = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.handleClick = function () {\n      if (_this2.props.active) {\n        _this2.props.onClose();\n      } else {\n        _this2.props.onOpen();\n      }\n    }, _this2.handleSelect = function (modifier) {\n      _this2.props.onChange(modifier);\n      _this2.props.onClose();\n    }, _temp2), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret2);\n  }\n\n  ModifierPicker.prototype.render = function render() {\n    var _props = this.props,\n        active = _props.active,\n        modifier = _props.modifier;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'emoji-picker-dropdown__modifiers'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(Emoji, {\n      emoji: 'fist',\n      set: 'twitter',\n      size: 22,\n      sheetSize: 32,\n      skin: modifier,\n      onClick: this.handleClick,\n      backgroundImageFn: backgroundImageFn\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPickerMenu, {\n      active: active,\n      onSelect: this.handleSelect,\n      onClose: this.props.onClose\n    }));\n  };\n\n  return ModifierPicker;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar EmojiPickerMenu = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class3 = (_temp4 = _class4 = function (_React$PureComponent3) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerMenu, _React$PureComponent3);\n\n  function EmojiPickerMenu() {\n    var _temp3, _this3, _ret3;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerMenu);\n\n    for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n      args[_key3] = arguments[_key3];\n    }\n\n    return _ret3 = (_temp3 = (_this3 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent3.call.apply(_React$PureComponent3, [this].concat(args))), _this3), _this3.state = {\n      modifierOpen: false,\n      placement: null\n    }, _this3.handleDocumentClick = function (e) {\n      if (_this3.node && !_this3.node.contains(e.target)) {\n        _this3.props.onClose();\n      }\n    }, _this3.setRef = function (c) {\n      _this3.node = c;\n    }, _this3.getI18n = function () {\n      var intl = _this3.props.intl;\n\n\n      return {\n        search: intl.formatMessage(messages.emoji_search),\n        notfound: intl.formatMessage(messages.emoji_not_found),\n        categories: {\n          search: intl.formatMessage(messages.search_results),\n          recent: intl.formatMessage(messages.recent),\n          people: intl.formatMessage(messages.people),\n          nature: intl.formatMessage(messages.nature),\n          foods: intl.formatMessage(messages.food),\n          activity: intl.formatMessage(messages.activity),\n          places: intl.formatMessage(messages.travel),\n          objects: intl.formatMessage(messages.objects),\n          symbols: intl.formatMessage(messages.symbols),\n          flags: intl.formatMessage(messages.flags),\n          custom: intl.formatMessage(messages.custom)\n        }\n      };\n    }, _this3.handleClick = function (emoji) {\n      if (!emoji.native) {\n        emoji.native = emoji.colons;\n      }\n\n      _this3.props.onClose();\n      _this3.props.onPick(emoji);\n    }, _this3.handleModifierOpen = function () {\n      _this3.setState({ modifierOpen: true });\n    }, _this3.handleModifierClose = function () {\n      _this3.setState({ modifierOpen: false });\n    }, _this3.handleModifierChange = function (modifier) {\n      _this3.props.onSkinTone(modifier);\n    }, _temp3), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this3, _ret3);\n  }\n\n  EmojiPickerMenu.prototype.componentDidMount = function componentDidMount() {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  EmojiPickerMenu.prototype.componentWillUnmount = function componentWillUnmount() {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  };\n\n  EmojiPickerMenu.prototype.render = function render() {\n    var _props2 = this.props,\n        loading = _props2.loading,\n        style = _props2.style,\n        intl = _props2.intl,\n        custom_emojis = _props2.custom_emojis,\n        skinTone = _props2.skinTone,\n        frequentlyUsedEmojis = _props2.frequentlyUsedEmojis;\n\n\n    if (loading) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        style: { width: 299 }\n      });\n    }\n\n    var title = intl.formatMessage(messages.emoji);\n    var modifierOpen = this.state.modifierOpen;\n\n\n    return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emoji-picker-dropdown__menu', { selecting: modifierOpen }), style: style, ref: this.setRef },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPicker, {\n        perLine: 8,\n        emojiSize: 22,\n        sheetSize: 32,\n        custom: Object(__WEBPACK_IMPORTED_MODULE_10__emoji_emoji__[\"buildCustomEmojis\"])(custom_emojis),\n        color: '',\n        emoji: '',\n        set: 'twitter',\n        title: title,\n        i18n: this.getI18n(),\n        onClick: this.handleClick,\n        include: categoriesSort,\n        recent: frequentlyUsedEmojis,\n        skin: skinTone,\n        showPreview: false,\n        backgroundImageFn: backgroundImageFn,\n        emojiTooltip: true\n      }),\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(ModifierPicker, {\n        active: modifierOpen,\n        modifier: skinTone,\n        onOpen: this.handleModifierOpen,\n        onClose: this.handleModifierClose,\n        onChange: this.handleModifierChange\n      })\n    );\n  };\n\n  return EmojiPickerMenu;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent), _class4.defaultProps = {\n  style: {},\n  loading: true,\n  frequentlyUsedEmojis: []\n}, _temp4)) || _class3;\n\nvar EmojiPickerDropdown = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class5 = function (_React$PureComponent4) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(EmojiPickerDropdown, _React$PureComponent4);\n\n  function EmojiPickerDropdown() {\n    var _temp5, _this4, _ret4;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, EmojiPickerDropdown);\n\n    for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n      args[_key4] = arguments[_key4];\n    }\n\n    return _ret4 = (_temp5 = (_this4 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent4.call.apply(_React$PureComponent4, [this].concat(args))), _this4), _this4.state = {\n      active: false,\n      loading: false\n    }, _this4.setRef = function (c) {\n      _this4.dropdown = c;\n    }, _this4.onShowDropdown = function (_ref) {\n      var target = _ref.target;\n\n      _this4.setState({ active: true });\n\n      if (!EmojiPicker) {\n        _this4.setState({ loading: true });\n\n        Object(__WEBPACK_IMPORTED_MODULE_6__ui_util_async_components__[\"i\" /* EmojiPicker */])().then(function (EmojiMart) {\n          EmojiPicker = EmojiMart.Picker;\n          Emoji = EmojiMart.Emoji;\n\n          _this4.setState({ loading: false });\n        }).catch(function () {\n          _this4.setState({ loading: false });\n        });\n      }\n\n      var _target$getBoundingCl = target.getBoundingClientRect(),\n          top = _target$getBoundingCl.top;\n\n      _this4.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n    }, _this4.onHideDropdown = function () {\n      _this4.setState({ active: false });\n    }, _this4.onToggle = function (e) {\n      if (!_this4.state.loading && (!e.key || e.key === 'Enter')) {\n        if (_this4.state.active) {\n          _this4.onHideDropdown();\n        } else {\n          _this4.onShowDropdown(e);\n        }\n      }\n    }, _this4.handleKeyDown = function (e) {\n      if (e.key === 'Escape') {\n        _this4.onHideDropdown();\n      }\n    }, _this4.setTargetRef = function (c) {\n      _this4.target = c;\n    }, _this4.findTarget = function () {\n      return _this4.target;\n    }, _temp5), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this4, _ret4);\n  }\n\n  EmojiPickerDropdown.prototype.render = function render() {\n    var _props3 = this.props,\n        intl = _props3.intl,\n        onPickEmoji = _props3.onPickEmoji,\n        onSkinTone = _props3.onSkinTone,\n        skinTone = _props3.skinTone,\n        frequentlyUsedEmojis = _props3.frequentlyUsedEmojis;\n\n    var title = intl.formatMessage(messages.emoji);\n    var _state = this.state,\n        active = _state.active,\n        loading = _state.loading,\n        placement = _state.placement;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'emoji-picker-dropdown',\n      onKeyDown: this.handleKeyDown\n    }, void 0, __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(\n      'div',\n      { ref: this.setTargetRef, className: 'emoji-button', title: title, 'aria-label': title, 'aria-expanded': active, role: 'button', onClick: this.onToggle, onKeyDown: this.onToggle, tabIndex: 0 },\n      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('img', {\n        className: __WEBPACK_IMPORTED_MODULE_8_classnames___default()('emojione', { 'pulse-loading': active && loading }),\n        alt: '\\uD83D\\uDE42',\n        src: assetHost + '/emoji/1f602.svg'\n      })\n    ), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Overlay___default.a, {\n      show: active,\n      placement: placement,\n      target: this.findTarget\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(EmojiPickerMenu, {\n      custom_emojis: this.props.custom_emojis,\n      loading: loading,\n      onClose: this.onHideDropdown,\n      onPick: onPickEmoji,\n      onSkinTone: onSkinTone,\n      skinTone: skinTone,\n      frequentlyUsedEmojis: frequentlyUsedEmojis\n    })));\n  };\n\n  return EmojiPickerDropdown;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class5;\n\n\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(35)))\n\n/***/ }),\n\n/***/ 311:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_form__ = __webpack_require__(312);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    mediaIds: state.getIn(['compose', 'media_attachments']).map(function (item) {\n      return item.get('id');\n    })\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 312:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadForm; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__ = __webpack_require__(313);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_upload_container__ = __webpack_require__(315);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\nvar UploadForm = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadForm, _ImmutablePureCompone);\n\n  function UploadForm() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadForm);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  UploadForm.prototype.render = function render() {\n    var mediaIds = this.props.mediaIds;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_upload_progress_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__uploads-wrapper'\n    }, void 0, mediaIds.map(function (id) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_upload_container__[\"a\" /* default */], {\n        id: id\n      }, id);\n    })));\n  };\n\n  return UploadForm;\n}(__WEBPACK_IMPORTED_MODULE_7_react_immutable_pure_component___default.a), _class.propTypes = {\n  mediaIds: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.list.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 313:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload_progress__ = __webpack_require__(314);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    active: state.getIn(['compose', 'is_uploading']),\n    progress: state.getIn(['compose', 'progress'])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload_progress__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 314:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return UploadProgress; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_intl__ = __webpack_require__(7);\n\n\n\n\n\n\n\n\n\n\nvar UploadProgress = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(UploadProgress, _React$PureComponent);\n\n  function UploadProgress() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, UploadProgress);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  UploadProgress.prototype.render = function render() {\n    var _props = this.props,\n        active = _props.active,\n        progress = _props.progress;\n\n\n    if (!active) {\n      return null;\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__icon'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      className: 'fa fa-upload'\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__message'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'upload_progress.label',\n      defaultMessage: 'Uploading...'\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'upload-progress__backdrop'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { width: 0 },\n      style: { width: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(progress) }\n    }, void 0, function (_ref) {\n      var width = _ref.width;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'upload-progress__tracker',\n        style: { width: width + '%' }\n      });\n    }))));\n  };\n\n  return UploadProgress;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 315:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_upload__ = __webpack_require__(316);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__actions_modal__ = __webpack_require__(26);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state, _ref) {\n  var id = _ref.id;\n  return {\n    media: state.getIn(['compose', 'media_attachments']).find(function (item) {\n      return item.get('id') === id;\n    })\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n\n    onUndo: function onUndo(id) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"X\" /* undoUploadCompose */])(id));\n    },\n\n    onDescriptionChange: function onDescriptionChange(id, description) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"L\" /* changeUploadCompose */])(id, { description: description }));\n    },\n\n    onOpenFocalPoint: function onOpenFocalPoint(id) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_3__actions_modal__[\"d\" /* openModal */])('FOCAL_POINT', { id: id }));\n    }\n\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_upload__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 316:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Upload; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  description: {\n    'id': 'upload_form.description',\n    'defaultMessage': 'Describe for the visually impaired'\n  }\n});\n\nvar Upload = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Upload, _ImmutablePureCompone);\n\n  function Upload() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Upload);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.state = {\n      hovered: false,\n      focused: false,\n      dirtyDescription: null\n    }, _this.handleUndoClick = function () {\n      _this.props.onUndo(_this.props.media.get('id'));\n    }, _this.handleFocalPointClick = function () {\n      _this.props.onOpenFocalPoint(_this.props.media.get('id'));\n    }, _this.handleInputChange = function (e) {\n      _this.setState({ dirtyDescription: e.target.value });\n    }, _this.handleMouseEnter = function () {\n      _this.setState({ hovered: true });\n    }, _this.handleMouseLeave = function () {\n      _this.setState({ hovered: false });\n    }, _this.handleInputFocus = function () {\n      _this.setState({ focused: true });\n    }, _this.handleInputBlur = function () {\n      var dirtyDescription = _this.state.dirtyDescription;\n\n\n      _this.setState({ focused: false, dirtyDescription: null });\n\n      if (dirtyDescription !== null) {\n        _this.props.onDescriptionChange(_this.props.media.get('id'), dirtyDescription);\n      }\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Upload.prototype.render = function render() {\n    var _this2 = this;\n\n    var _props = this.props,\n        intl = _props.intl,\n        media = _props.media;\n\n    var active = this.state.hovered || this.state.focused;\n    var description = this.state.dirtyDescription || this.state.dirtyDescription !== '' && media.get('description') || '';\n    var focusX = media.getIn(['meta', 'focus', 'x']);\n    var focusY = media.getIn(['meta', 'focus', 'y']);\n    var x = (focusX / 2 + .5) * 100;\n    var y = (focusY / -2 + .5) * 100;\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose-form__upload',\n      onMouseEnter: this.handleMouseEnter,\n      onMouseLeave: this.handleMouseLeave\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { scale: 0.8 },\n      style: { scale: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { stiffness: 180, damping: 12 }) }\n    }, void 0, function (_ref) {\n      var scale = _ref.scale;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'compose-form__upload-thumbnail',\n        style: { transform: 'scale(' + scale + ')', backgroundImage: 'url(' + media.get('preview_url') + ')', backgroundPosition: x + '% ' + y + '%' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload__actions', { active: active })\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        className: 'icon-button',\n        onClick: _this2.handleUndoClick\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-times'\n      }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'upload_form.undo',\n        defaultMessage: 'Delete'\n      })), media.get('type') === 'image' && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('button', {\n        className: 'icon-button',\n        onClick: _this2.handleFocalPointClick\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-crosshairs'\n      }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'upload_form.focus',\n        defaultMessage: 'Crop'\n      }))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: __WEBPACK_IMPORTED_MODULE_11_classnames___default()('compose-form__upload-description', { active: active })\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n        style: { display: 'none' }\n      }, void 0, intl.formatMessage(messages.description)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n        placeholder: intl.formatMessage(messages.description),\n        type: 'text',\n        value: description,\n        maxLength: 420,\n        onFocus: _this2.handleInputFocus,\n        onChange: _this2.handleInputChange,\n        onBlur: _this2.handleInputBlur\n      }))));\n    }));\n  };\n\n  return Upload;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class2.propTypes = {\n  media: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n  onUndo: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onDescriptionChange: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onOpenFocalPoint: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 317:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_warning__ = __webpack_require__(318);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__initial_state__ = __webpack_require__(13);\n\n\n\n\n\n\n\n\nvar APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_5__initial_state__[\"i\" /* me */], 'locked']),\n    hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n    directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct'\n  };\n};\n\nvar WarningWrapper = function WarningWrapper(_ref) {\n  var needsLockWarning = _ref.needsLockWarning,\n      hashtagWarning = _ref.hashtagWarning,\n      directMessageWarning = _ref.directMessageWarning;\n\n  if (needsLockWarning) {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'compose_form.lock_disclaimer',\n        defaultMessage: 'Your account is not {locked}. Anyone can follow you to view your follower-only posts.',\n        values: { locked: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n            href: '/user-settings'\n          }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n            id: 'compose_form.lock_disclaimer.lock',\n            defaultMessage: 'locked'\n          })) }\n      })\n    });\n  }\n\n  if (hashtagWarning) {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'compose_form.hashtag_warning',\n        defaultMessage: 'This toot won\\'t be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.'\n      })\n    });\n  }\n\n  if (directMessageWarning) {\n    var message = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'compose_form.direct_message_warning',\n      defaultMessage: 'This toot will only be sent to all the mentioned users.'\n    }), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n      href: '/terms',\n      target: '_blank'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'compose_form.direct_message_warning_learn_more',\n      defaultMessage: 'Learn more'\n    })));\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3__components_warning__[\"a\" /* default */], {\n      message: message\n    });\n  }\n\n  return null;\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(mapStateToProps)(WarningWrapper));\n\n/***/ }),\n\n/***/ 318:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Warning; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring__);\n\n\n\n\n\n\n\n\n\nvar Warning = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Warning, _React$PureComponent);\n\n  function Warning() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Warning);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  Warning.prototype.render = function render() {\n    var message = this.props.message;\n\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_6_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'compose-form__warning',\n        style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n      }, void 0, message);\n    });\n  };\n\n  return Warning;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\n\n\n/***/ }),\n\n/***/ 319:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_compose_form__ = __webpack_require__(293);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__actions_compose__ = __webpack_require__(17);\n\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    text: state.getIn(['compose', 'text']),\n    suggestion_token: state.getIn(['compose', 'suggestion_token']),\n    suggestions: state.getIn(['compose', 'suggestions']),\n    spoiler: state.getIn(['compose', 'spoiler']),\n    spoiler_text: state.getIn(['compose', 'spoiler_text']),\n    privacy: state.getIn(['compose', 'privacy']),\n    focusDate: state.getIn(['compose', 'focusDate']),\n    caretPosition: state.getIn(['compose', 'caretPosition']),\n    preselectDate: state.getIn(['compose', 'preselectDate']),\n    is_submitting: state.getIn(['compose', 'is_submitting']),\n    is_uploading: state.getIn(['compose', 'is_uploading']),\n    showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n    anyMedia: state.getIn(['compose', 'media_attachments']).size > 0\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(text) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"F\" /* changeCompose */])(text));\n    },\n    onSubmit: function onSubmit() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"W\" /* submitCompose */])());\n    },\n    onClearSuggestions: function onClearSuggestions() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"M\" /* clearComposeSuggestions */])());\n    },\n    onFetchSuggestions: function onFetchSuggestions(token) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"O\" /* fetchComposeSuggestions */])(token));\n    },\n    onSuggestionSelected: function onSuggestionSelected(position, token, accountId) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"V\" /* selectComposeSuggestion */])(position, token, accountId));\n    },\n    onChangeSpoilerText: function onChangeSpoilerText(checked) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"H\" /* changeComposeSpoilerText */])(checked));\n    },\n    onPaste: function onPaste(files) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Z\" /* uploadCompose */])(files));\n    },\n    onPickEmoji: function onPickEmoji(position, data, needsSpace) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_2__actions_compose__[\"Q\" /* insertEmojiCompose */])(position, data, needsSpace));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_1__components_compose_form__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 809:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return Compose; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__ = __webpack_require__(319);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__ = __webpack_require__(980);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_compose__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__containers_search_container__ = __webpack_require__(981);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__ = __webpack_require__(982);\n\n\n\n\n\nvar _dec, _class;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"f\" /* defineMessages */])({\n  start: {\n    'id': 'getting_started.heading',\n    'defaultMessage': 'Getting started'\n  },\n  home_timeline: {\n    'id': 'tabs_bar.home',\n    'defaultMessage': 'Home'\n  },\n  notifications: {\n    'id': 'tabs_bar.notifications',\n    'defaultMessage': 'Notifications'\n  },\n  public: {\n    'id': 'navigation_bar.public_timeline',\n    'defaultMessage': 'Federated timeline'\n  },\n  community: {\n    'id': 'navigation_bar.community_timeline',\n    'defaultMessage': 'Local timeline'\n  },\n  preferences: {\n    'id': 'navigation_bar.preferences',\n    'defaultMessage': 'Preferences'\n  },\n  logout: {\n    'id': 'navigation_bar.logout',\n    'defaultMessage': 'Logout'\n  }\n});\n\nvar mapStateToProps = function mapStateToProps(state, ownProps) {\n  return {\n    columns: state.getIn(['settings', 'columns']),\n    showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage\n  };\n};\n\nvar Compose = (_dec = Object(__WEBPACK_IMPORTED_MODULE_7_react_redux__[\"connect\"])(mapStateToProps), _dec(_class = Object(__WEBPACK_IMPORTED_MODULE_10_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Compose, _React$PureComponent);\n\n  function Compose() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Compose);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args))), _this), _this.onFocus = function () {\n      _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(true));\n    }, _this.onBlur = function () {\n      _this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"K\" /* changeComposing */])(false));\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Compose.prototype.componentDidMount = function componentDidMount() {\n    var isSearchPage = this.props.isSearchPage;\n\n\n    if (!isSearchPage) {\n      this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"S\" /* mountCompose */])());\n    }\n  };\n\n  Compose.prototype.componentWillUnmount = function componentWillUnmount() {\n    var isSearchPage = this.props.isSearchPage;\n\n\n    if (!isSearchPage) {\n      this.props.dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_compose__[\"Y\" /* unmountCompose */])());\n    }\n  };\n\n  Compose.prototype.render = function render() {\n    var _props = this.props,\n        multiColumn = _props.multiColumn,\n        showSearch = _props.showSearch,\n        isSearchPage = _props.isSearchPage,\n        intl = _props.intl;\n\n\n    var header = '';\n\n    if (multiColumn) {\n      var columns = this.props.columns;\n\n      header = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('nav', {\n        className: 'drawer__header'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/getting-started',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.start),\n        'aria-label': intl.formatMessage(messages.start)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-bars'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'HOME';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/home',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.home_timeline),\n        'aria-label': intl.formatMessage(messages.home_timeline)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-home'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'NOTIFICATIONS';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/notifications',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.notifications),\n        'aria-label': intl.formatMessage(messages.notifications)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-bell'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'COMMUNITY';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/public/local',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.community),\n        'aria-label': intl.formatMessage(messages.community)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-users'\n      })), !columns.some(function (column) {\n        return column.get('id') === 'PUBLIC';\n      }) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9_react_router_dom__[\"b\" /* Link */], {\n        to: '/timelines/public',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.public),\n        'aria-label': intl.formatMessage(messages.public)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-globe'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n        href: '/user-settings',\n        className: 'drawer__tab',\n        title: intl.formatMessage(messages.preferences),\n        'aria-label': intl.formatMessage(messages.preferences)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-cog'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('a', {\n        href: '/auth/sign_out',\n        className: 'drawer__tab',\n        'data-method': 'delete',\n        title: intl.formatMessage(messages.logout),\n        'aria-label': intl.formatMessage(messages.logout)\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        role: 'img',\n        className: 'fa fa-fw fa-sign-out'\n      })));\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer'\n    }, void 0, header, (multiColumn || isSearchPage) && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_11__containers_search_container__[\"a\" /* default */], {}), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer__pager'\n    }, void 0, !isSearchPage && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'drawer__inner',\n      onFocus: this.onFocus\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6__containers_navigation_container__[\"a\" /* default */], {\n      onClose: this.onBlur\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_compose_form_container__[\"a\" /* default */], {})), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_12__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { x: isSearchPage ? 0 : -100 },\n      style: { x: __WEBPACK_IMPORTED_MODULE_13_react_motion_lib_spring___default()(showSearch || isSearchPage ? 0 : -100, { stiffness: 210, damping: 20 }) }\n    }, void 0, function (_ref) {\n      var x = _ref.x;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'drawer__inner darker',\n        style: { transform: 'translateX(' + x + '%)', visibility: x === -100 ? 'hidden' : 'visible' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_14__containers_search_results_container__[\"a\" /* default */], {}));\n    })));\n  };\n\n  return Compose;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class) || _class);\n\n\n/***/ }),\n\n/***/ 864:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__selectors__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_account__ = __webpack_require__(865);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__actions_accounts__ = __webpack_require__(22);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__actions_modal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__actions_mutes__ = __webpack_require__(90);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(13);\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"f\" /* defineMessages */])({\n  unfollowConfirm: {\n    'id': 'confirmations.unfollow.confirm',\n    'defaultMessage': 'Unfollow'\n  }\n});\n\nvar makeMapStateToProps = function makeMapStateToProps() {\n  var getAccount = Object(__WEBPACK_IMPORTED_MODULE_4__selectors__[\"c\" /* makeGetAccount */])();\n\n  var mapStateToProps = function mapStateToProps(state, props) {\n    return {\n      account: getAccount(state, props.id)\n    };\n  };\n\n  return mapStateToProps;\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch, _ref) {\n  var intl = _ref.intl;\n  return {\n    onFollow: function onFollow(account) {\n      if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n        if (__WEBPACK_IMPORTED_MODULE_9__initial_state__[\"l\" /* unfollowModal */]) {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_7__actions_modal__[\"d\" /* openModal */])('CONFIRM', {\n            message: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"b\" /* FormattedMessage */], {\n              id: 'confirmations.unfollow.message',\n              defaultMessage: 'Are you sure you want to unfollow {name}?',\n              values: { name: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, '@', account.get('acct')) }\n            }),\n            confirm: intl.formatMessage(messages.unfollowConfirm),\n            onConfirm: function onConfirm() {\n              return dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n            }\n          }));\n        } else {\n          dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"D\" /* unfollowAccount */])(account.get('id')));\n        }\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"z\" /* followAccount */])(account.get('id')));\n      }\n    },\n    onBlock: function onBlock(account) {\n      if (account.getIn(['relationship', 'blocking'])) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"C\" /* unblockAccount */])(account.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"q\" /* blockAccount */])(account.get('id')));\n      }\n    },\n    onMute: function onMute(account) {\n      if (account.getIn(['relationship', 'muting'])) {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"E\" /* unmuteAccount */])(account.get('id')));\n      } else {\n        dispatch(Object(__WEBPACK_IMPORTED_MODULE_8__actions_mutes__[\"g\" /* initMuteModal */])(account));\n      }\n    },\n    onMuteNotifications: function onMuteNotifications(account, notifications) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_6__actions_accounts__[\"A\" /* muteAccount */])(account.get('id'), notifications));\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_3_react_intl__[\"g\" /* injectIntl */])(Object(__WEBPACK_IMPORTED_MODULE_2_react_redux__[\"connect\"])(makeMapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_5__components_account__[\"a\" /* default */])));\n\n/***/ }),\n\n/***/ 865:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Account; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__display_name__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__permalink__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class, _class2, _temp2;\n\n\n\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"f\" /* defineMessages */])({\n  follow: {\n    'id': 'account.follow',\n    'defaultMessage': 'Follow'\n  },\n  unfollow: {\n    'id': 'account.unfollow',\n    'defaultMessage': 'Unfollow'\n  },\n  requested: {\n    'id': 'account.requested',\n    'defaultMessage': 'Awaiting approval'\n  },\n  unblock: {\n    'id': 'account.unblock',\n    'defaultMessage': 'Unblock @{name}'\n  },\n  unmute: {\n    'id': 'account.unmute',\n    'defaultMessage': 'Unmute @{name}'\n  },\n  mute_notifications: {\n    'id': 'account.mute_notifications',\n    'defaultMessage': 'Mute notifications from @{name}'\n  },\n  unmute_notifications: {\n    'id': 'account.unmute_notifications',\n    'defaultMessage': 'Unmute notifications from @{name}'\n  }\n});\n\nvar Account = Object(__WEBPACK_IMPORTED_MODULE_11_react_intl__[\"g\" /* injectIntl */])(_class = (_temp2 = _class2 = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Account, _ImmutablePureCompone);\n\n  function Account() {\n    var _temp, _this, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Account);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.call.apply(_ImmutablePureCompone, [this].concat(args))), _this), _this.handleFollow = function () {\n      _this.props.onFollow(_this.props.account);\n    }, _this.handleBlock = function () {\n      _this.props.onBlock(_this.props.account);\n    }, _this.handleMute = function () {\n      _this.props.onMute(_this.props.account);\n    }, _this.handleMuteNotifications = function () {\n      _this.props.onMuteNotifications(_this.props.account, true);\n    }, _this.handleUnmuteNotifications = function () {\n      _this.props.onMuteNotifications(_this.props.account, false);\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);\n  }\n\n  Account.prototype.render = function render() {\n    var _props = this.props,\n        account = _props.account,\n        intl = _props.intl,\n        hidden = _props.hidden;\n\n\n    if (!account) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {});\n    }\n\n    if (hidden) {\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {}, void 0, account.get('display_name'), account.get('username'));\n    }\n\n    var buttons = void 0;\n\n    if (account.get('id') !== __WEBPACK_IMPORTED_MODULE_13__initial_state__[\"i\" /* me */] && account.get('relationship', null) !== null) {\n      var following = account.getIn(['relationship', 'following']);\n      var requested = account.getIn(['relationship', 'requested']);\n      var blocking = account.getIn(['relationship', 'blocking']);\n      var muting = account.getIn(['relationship', 'muting']);\n\n      if (requested) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          disabled: true,\n          icon: 'hourglass',\n          title: intl.formatMessage(messages.requested)\n        });\n      } else if (blocking) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          active: true,\n          icon: 'unlock-alt',\n          title: intl.formatMessage(messages.unblock, { name: account.get('username') }),\n          onClick: this.handleBlock\n        });\n      } else if (muting) {\n        var hidingNotificationsButton = void 0;\n        if (account.getIn(['relationship', 'muting_notifications'])) {\n          hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n            active: true,\n            icon: 'bell',\n            title: intl.formatMessage(messages.unmute_notifications, { name: account.get('username') }),\n            onClick: this.handleUnmuteNotifications\n          });\n        } else {\n          hidingNotificationsButton = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n            active: true,\n            icon: 'bell-slash',\n            title: intl.formatMessage(messages.mute_notifications, { name: account.get('username') }),\n            onClick: this.handleMuteNotifications\n          });\n        }\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          active: true,\n          icon: 'volume-up',\n          title: intl.formatMessage(messages.unmute, { name: account.get('username') }),\n          onClick: this.handleMute\n        }), hidingNotificationsButton);\n      } else if (!account.get('moved') || following) {\n        buttons = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__icon_button__[\"a\" /* default */], {\n          icon: following ? 'user-times' : 'user-plus',\n          title: intl.formatMessage(following ? messages.unfollow : messages.follow),\n          onClick: this.handleFollow,\n          active: following\n        });\n      }\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__permalink__[\"a\" /* default */], {\n      className: 'account__display-name',\n      href: account.get('url'),\n      to: '/accounts/' + account.get('id')\n    }, account.get('id'), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__avatar-wrapper'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__avatar__[\"a\" /* default */], {\n      account: account,\n      size: 36\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__display_name__[\"a\" /* default */], {\n      account: account\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'account__relationship'\n    }, void 0, buttons)));\n  };\n\n  return Account;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class2.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired,\n  onFollow: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onBlock: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onMute: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  onMuteNotifications: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func.isRequired,\n  intl: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.object.isRequired,\n  hidden: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool\n}, _temp2)) || _class;\n\n\n\n/***/ }),\n\n/***/ 871:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return shortNumberFormat; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_intl__ = __webpack_require__(7);\n\n\n\n\nvar shortNumberFormat = function shortNumberFormat(number) {\n  if (number < 1000) {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"c\" /* FormattedNumber */], {\n      value: number\n    });\n  } else {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_1_react__[\"Fragment\"], {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_intl__[\"c\" /* FormattedNumber */], {\n      value: number / 1000,\n      maximumFractionDigits: 1\n    }), 'K');\n  }\n};\n\n/***/ }),\n\n/***/ 886:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return NavigationBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__action_bar__ = __webpack_require__(887);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_avatar__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_permalink__ = __webpack_require__(287);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_icon_button__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component__);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\n\n\nvar NavigationBar = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(NavigationBar, _ImmutablePureCompone);\n\n  function NavigationBar() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, NavigationBar);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  NavigationBar.prototype.render = function render() {\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'navigation-bar'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n      href: this.props.account.get('url'),\n      to: '/accounts/' + this.props.account.get('id')\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, this.props.account.get('acct')), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__components_avatar__[\"a\" /* default */], {\n      account: this.props.account,\n      size: 40\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'navigation-bar__profile'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_9__components_permalink__[\"a\" /* default */], {\n      href: this.props.account.get('url'),\n      to: '/accounts/' + this.props.account.get('id')\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {\n      className: 'navigation-bar__profile-account'\n    }, void 0, '@', this.props.account.get('acct')))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'navigation-bar__actions'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_icon_button__[\"a\" /* default */], {\n      className: 'close',\n      title: '',\n      icon: 'close',\n      onClick: this.props.onClose\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__action_bar__[\"a\" /* default */], {\n      account: this.props.account\n    })));\n  };\n\n  return NavigationBar;\n}(__WEBPACK_IMPORTED_MODULE_12_react_immutable_pure_component___default.a), _class.propTypes = {\n  account: __WEBPACK_IMPORTED_MODULE_6_react_immutable_proptypes___default.a.map.isRequired,\n  onClose: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func\n}, _temp);\n\n\n/***/ }),\n\n/***/ 887:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return ActionBar; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__ = __webpack_require__(291);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(7);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"f\" /* defineMessages */])({\n  edit_profile: {\n    'id': 'account.edit_profile',\n    'defaultMessage': 'Edit profile'\n  },\n  pins: {\n    'id': 'navigation_bar.pins',\n    'defaultMessage': 'Pinned toots'\n  },\n  preferences: {\n    'id': 'navigation_bar.preferences',\n    'defaultMessage': 'Preferences'\n  },\n  follow_requests: {\n    'id': 'navigation_bar.follow_requests',\n    'defaultMessage': 'Follow requests'\n  },\n  favourites: {\n    'id': 'navigation_bar.favourites',\n    'defaultMessage': 'Favourites'\n  },\n  lists: {\n    'id': 'navigation_bar.lists',\n    'defaultMessage': 'Lists'\n  },\n  blocks: {\n    'id': 'navigation_bar.blocks',\n    'defaultMessage': 'Blocked users'\n  },\n  domain_blocks: {\n    'id': 'navigation_bar.domain_blocks',\n    'defaultMessage': 'Hidden domains'\n  },\n  mutes: {\n    'id': 'navigation_bar.mutes',\n    'defaultMessage': 'Muted users'\n  }\n});\n\nvar ActionBar = Object(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(ActionBar, _React$PureComponent);\n\n  function ActionBar() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, ActionBar);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  ActionBar.prototype.render = function render() {\n    var intl = this.props.intl;\n\n\n    var menu = [];\n\n    menu.push({ text: intl.formatMessage(messages.preferences), href: '/user-settings' });\n    menu.push({ text: intl.formatMessage(messages.pins), to: '/pinned' });\n    menu.push(null);\n    menu.push({ text: intl.formatMessage(messages.follow_requests), to: '/follow_requests' });\n    menu.push({ text: intl.formatMessage(messages.favourites), to: '/favourites' });\n    menu.push({ text: intl.formatMessage(messages.lists), to: '/lists' });\n    menu.push(null);\n    menu.push({ text: intl.formatMessage(messages.mutes), to: '/mutes' });\n    menu.push({ text: intl.formatMessage(messages.blocks), to: '/blocks' });\n    menu.push({ text: intl.formatMessage(messages.domain_blocks), to: '/domain_blocks' });\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose__action-bar'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'compose__action-bar-dropdown'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5__containers_dropdown_menu_container__[\"a\" /* default */], {\n      items: menu,\n      icon: 'ellipsis-v',\n      size: 24,\n      direction: 'right'\n    })));\n  };\n\n  return ActionBar;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 895:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Search; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__ = __webpack_require__(97);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__initial_state__ = __webpack_require__(13);\n\n\n\n\n\nvar _class;\n\n\n\n\n\n\n\n\n\nvar messages = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"f\" /* defineMessages */])({\n  placeholder: {\n    'id': 'search.placeholder',\n    'defaultMessage': 'Search'\n  }\n});\n\nvar SearchPopout = function (_React$PureComponent) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchPopout, _React$PureComponent);\n\n  function SearchPopout() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchPopout);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent.apply(this, arguments));\n  }\n\n  SearchPopout.prototype.render = function render() {\n    var style = this.props.style;\n\n    var extraInformation = __WEBPACK_IMPORTED_MODULE_9__initial_state__[\"k\" /* searchEnabled */] ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_popout.tips.full_text',\n      defaultMessage: 'Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.'\n    }) : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_popout.tips.text',\n      defaultMessage: 'Simple text returns matching display names, usernames and hashtags'\n    });\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      style: Object.assign({}, style, { position: 'absolute', width: 315 })\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__ui_util_optional_motion__[\"a\" /* default */], {\n      defaultStyle: { opacity: 0, scaleX: 0.85, scaleY: 0.75 },\n      style: { opacity: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleX: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }), scaleY: __WEBPACK_IMPORTED_MODULE_8_react_motion_lib_spring___default()(1, { damping: 35, stiffness: 400 }) }\n    }, void 0, function (_ref) {\n      var opacity = _ref.opacity,\n          scaleX = _ref.scaleX,\n          scaleY = _ref.scaleY;\n      return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-popout',\n        style: { opacity: opacity, transform: 'scale(' + scaleX + ', ' + scaleY + ')' }\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h4', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.search_format',\n        defaultMessage: 'Advanced search format'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('ul', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '#example'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.hashtag',\n        defaultMessage: 'hashtag'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, '@username@domain'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.user',\n        defaultMessage: 'user'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.user',\n        defaultMessage: 'user'\n      })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('li', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('em', {}, void 0, 'URL'), ' ', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_popout.tips.status',\n        defaultMessage: 'status'\n      }))), extraInformation);\n    }));\n  };\n\n  return SearchPopout;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent);\n\nvar Search = Object(__WEBPACK_IMPORTED_MODULE_5_react_intl__[\"g\" /* injectIntl */])(_class = function (_React$PureComponent2) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Search, _React$PureComponent2);\n\n  function Search() {\n    var _temp, _this2, _ret;\n\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Search);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this2 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$PureComponent2.call.apply(_React$PureComponent2, [this].concat(args))), _this2), _this2.state = {\n      expanded: false\n    }, _this2.handleChange = function (e) {\n      _this2.props.onChange(e.target.value);\n    }, _this2.handleClear = function (e) {\n      e.preventDefault();\n\n      if (_this2.props.value.length > 0 || _this2.props.submitted) {\n        _this2.props.onClear();\n      }\n    }, _this2.handleKeyDown = function (e) {\n      if (e.key === 'Enter') {\n        e.preventDefault();\n        _this2.props.onSubmit();\n      } else if (e.key === 'Escape') {\n        document.querySelector('.ui').parentElement.focus();\n      }\n    }, _this2.handleFocus = function () {\n      _this2.setState({ expanded: true });\n      _this2.props.onShow();\n    }, _this2.handleBlur = function () {\n      _this2.setState({ expanded: false });\n    }, _temp), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(_this2, _ret);\n  }\n\n  Search.prototype.noop = function noop() {};\n\n  Search.prototype.render = function render() {\n    var _props = this.props,\n        intl = _props.intl,\n        value = _props.value,\n        submitted = _props.submitted;\n    var expanded = this.state.expanded;\n\n    var hasValue = value.length > 0 || submitted;\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('label', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {\n      style: { display: 'none' }\n    }, void 0, intl.formatMessage(messages.placeholder)), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('input', {\n      className: 'search__input',\n      type: 'text',\n      placeholder: intl.formatMessage(messages.placeholder),\n      value: value,\n      onChange: this.handleChange,\n      onKeyUp: this.handleKeyDown,\n      onFocus: this.handleFocus,\n      onBlur: this.handleBlur\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      role: 'button',\n      tabIndex: '0',\n      className: 'search__icon',\n      onClick: this.handleClear\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      className: 'fa fa-search ' + (hasValue ? '' : 'active')\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      'aria-label': intl.formatMessage(messages.placeholder),\n      className: 'fa fa-times-circle ' + (hasValue ? 'active' : '')\n    })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_overlays_lib_Overlay___default.a, {\n      show: expanded && !hasValue,\n      placement: 'bottom',\n      target: this\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(SearchPopout, {})));\n  };\n\n  return Search;\n}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponent)) || _class;\n\n\n\n/***/ }),\n\n/***/ 980:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__ = __webpack_require__(886);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__initial_state__ = __webpack_require__(13);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    account: state.getIn(['accounts', __WEBPACK_IMPORTED_MODULE_2__initial_state__[\"i\" /* me */]])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_navigation_bar__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 981:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__actions_search__ = __webpack_require__(324);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_search__ = __webpack_require__(895);\n\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    value: state.getIn(['search', 'value']),\n    submitted: state.getIn(['search', 'submitted'])\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return {\n    onChange: function onChange(value) {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"e\" /* changeSearch */])(value));\n    },\n    onClear: function onClear() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"f\" /* clearSearch */])());\n    },\n    onSubmit: function onSubmit() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"h\" /* submitSearch */])());\n    },\n    onShow: function onShow() {\n      dispatch(Object(__WEBPACK_IMPORTED_MODULE_1__actions_search__[\"g\" /* showSearch */])());\n    }\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps, mapDispatchToProps)(__WEBPACK_IMPORTED_MODULE_2__components_search__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 982:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_redux__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_search_results__ = __webpack_require__(983);\n\n\n\nvar mapStateToProps = function mapStateToProps(state) {\n  return {\n    results: state.getIn(['search', 'results'])\n  };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_0_react_redux__[\"connect\"])(mapStateToProps)(__WEBPACK_IMPORTED_MODULE_1__components_search_results__[\"a\" /* default */]));\n\n/***/ }),\n\n/***/ 983:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return SearchResults; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__containers_account_container__ = __webpack_require__(864);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__containers_status_container__ = __webpack_require__(277);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_hashtag__ = __webpack_require__(984);\n\n\n\n\n\nvar _class, _temp;\n\n\n\n\n\n\n\n\n\nvar SearchResults = (_temp = _class = function (_ImmutablePureCompone) {\n  __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(SearchResults, _ImmutablePureCompone);\n\n  function SearchResults() {\n    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, SearchResults);\n\n    return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _ImmutablePureCompone.apply(this, arguments));\n  }\n\n  SearchResults.prototype.render = function render() {\n    var results = this.props.results;\n\n\n    var accounts = void 0,\n        statuses = void 0,\n        hashtags = void 0;\n    var count = 0;\n\n    if (results.get('accounts') && results.get('accounts').size > 0) {\n      count += results.get('accounts').size;\n      accounts = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-fw fa-users'\n      }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.accounts',\n        defaultMessage: 'People'\n      })), results.get('accounts').map(function (accountId) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_7__containers_account_container__[\"a\" /* default */], {\n          id: accountId\n        }, accountId);\n      }));\n    }\n\n    if (results.get('statuses') && results.get('statuses').size > 0) {\n      count += results.get('statuses').size;\n      statuses = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-fw fa-quote-right'\n      }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.statuses',\n        defaultMessage: 'Toots'\n      })), results.get('statuses').map(function (statusId) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_8__containers_status_container__[\"a\" /* default */], {\n          id: statusId\n        }, statusId);\n      }));\n    }\n\n    if (results.get('hashtags') && results.get('hashtags').size > 0) {\n      count += results.get('hashtags').size;\n      hashtags = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n        className: 'search-results__section'\n      }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('h5', {}, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n        className: 'fa fa-fw fa-hashtag'\n      }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n        id: 'search_results.hashtags',\n        defaultMessage: 'Hashtags'\n      })), results.get('hashtags').map(function (hashtag) {\n        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_10__components_hashtag__[\"a\" /* default */], {\n          hashtag: hashtag\n        }, hashtag.get('name'));\n      }));\n    }\n\n    return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search-results'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n      className: 'search-results__header'\n    }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('i', {\n      className: 'fa fa-search fa-fw'\n    }), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_6_react_intl__[\"b\" /* FormattedMessage */], {\n      id: 'search_results.total',\n      defaultMessage: '{count, number} {count, plural, one {result} other {results}}',\n      values: { count: count }\n    })), accounts, statuses, hashtags);\n  };\n\n  return SearchResults;\n}(__WEBPACK_IMPORTED_MODULE_9_react_immutable_pure_component___default.a), _class.propTypes = {\n  results: __WEBPACK_IMPORTED_MODULE_5_react_immutable_proptypes___default.a.map.isRequired\n}, _temp);\n\n\n/***/ }),\n\n/***/ 984:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_sparklines__ = __webpack_require__(985);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react_sparklines___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react_sparklines__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router_dom__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react_intl__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_numbers__ = __webpack_require__(871);\n\n\n\n\n\n\n\n\nvar Hashtag = function Hashtag(_ref) {\n  var hashtag = _ref.hashtag;\n  return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n    className: 'trends__item'\n  }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n    className: 'trends__item__name'\n  }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_3_react_router_dom__[\"b\" /* Link */], {\n    to: '/timelines/tag/' + hashtag.get('name')\n  }, void 0, '#', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('span', {}, void 0, hashtag.get('name'))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_4_react_intl__[\"b\" /* FormattedMessage */], {\n    id: 'trends.count_by_accounts',\n    defaultMessage: '{count} {rawCount, plural, one {person} other {people}} talking',\n    values: { rawCount: hashtag.getIn(['history', 0, 'accounts']), count: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('strong', {}, void 0, Object(__WEBPACK_IMPORTED_MODULE_5__utils_numbers__[\"a\" /* shortNumberFormat */])(hashtag.getIn(['history', 0, 'accounts']))) }\n  })), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n    className: 'trends__item__current'\n  }, void 0, Object(__WEBPACK_IMPORTED_MODULE_5__utils_numbers__[\"a\" /* shortNumberFormat */])(hashtag.getIn(['history', 0, 'uses']))), __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()('div', {\n    className: 'trends__item__sparkline'\n  }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_sparklines__[\"Sparklines\"], {\n    width: 50,\n    height: 28,\n    data: hashtag.get('history') && hashtag.get('history').reverse().map(function (day) {\n      return day.get('uses');\n    }).toArray()\n  }, void 0, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_jsx___default()(__WEBPACK_IMPORTED_MODULE_2_react_sparklines__[\"SparklinesCurve\"], {\n    style: { fill: 'none' }\n  }))));\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Hashtag);\n\n/***/ }),\n\n/***/ 985:\n/***/ (function(module, exports, __webpack_require__) {\n\n(function webpackUniversalModuleDefinition(root, factory) {\n  if (true) module.exports = factory(__webpack_require__(0));else if (typeof define === 'function' && define.amd) define([\"react\"], factory);else if (typeof exports === 'object') exports[\"ReactSparklines\"] = factory(require(\"react\"));else root[\"ReactSparklines\"] = factory(root[\"React\"]);\n})(this, function (__WEBPACK_EXTERNAL_MODULE_1__) {\n  return (/******/function (modules) {\n      // webpackBootstrap\n      /******/ // The module cache\n      /******/var installedModules = {};\n      /******/\n      /******/ // The require function\n      /******/function __webpack_require__(moduleId) {\n        /******/\n        /******/ // Check if module is in cache\n        /******/if (installedModules[moduleId]) {\n          /******/return installedModules[moduleId].exports;\n          /******/\n        }\n        /******/ // Create a new module (and put it into the cache)\n        /******/var module = installedModules[moduleId] = {\n          /******/i: moduleId,\n          /******/l: false,\n          /******/exports: {}\n          /******/ };\n        /******/\n        /******/ // Execute the module function\n        /******/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n        /******/\n        /******/ // Flag the module as loaded\n        /******/module.l = true;\n        /******/\n        /******/ // Return the exports of the module\n        /******/return module.exports;\n        /******/\n      }\n      /******/\n      /******/\n      /******/ // expose the modules object (__webpack_modules__)\n      /******/__webpack_require__.m = modules;\n      /******/\n      /******/ // expose the module cache\n      /******/__webpack_require__.c = installedModules;\n      /******/\n      /******/ // define getter function for harmony exports\n      /******/__webpack_require__.d = function (exports, name, getter) {\n        /******/if (!__webpack_require__.o(exports, name)) {\n          /******/Object.defineProperty(exports, name, {\n            /******/configurable: false,\n            /******/enumerable: true,\n            /******/get: getter\n            /******/ });\n          /******/\n        }\n        /******/\n      };\n      /******/\n      /******/ // getDefaultExport function for compatibility with non-harmony modules\n      /******/__webpack_require__.n = function (module) {\n        /******/var getter = module && module.__esModule ?\n        /******/function getDefault() {\n          return module['default'];\n        } :\n        /******/function getModuleExports() {\n          return module;\n        };\n        /******/__webpack_require__.d(getter, 'a', getter);\n        /******/return getter;\n        /******/\n      };\n      /******/\n      /******/ // Object.prototype.hasOwnProperty.call\n      /******/__webpack_require__.o = function (object, property) {\n        return Object.prototype.hasOwnProperty.call(object, property);\n      };\n      /******/\n      /******/ // __webpack_public_path__\n      /******/__webpack_require__.p = \"/\";\n      /******/\n      /******/ // Load entry module and return exports\n      /******/return __webpack_require__(__webpack_require__.s = 11);\n      /******/\n    }(\n    /************************************************************************/\n    /******/[\n    /* 0 */\n    /***/function (module, exports, __webpack_require__) {\n\n      /* WEBPACK VAR INJECTION */(function (process) {\n        /**\n        * Copyright 2013-present, Facebook, Inc.\n        * All rights reserved.\n        *\n        * This source code is licensed under the BSD-style license found in the\n        * LICENSE file in the root directory of this source tree. An additional grant\n        * of patent rights can be found in the PATENTS file in the same directory.\n        */\n\n        if (process.env.NODE_ENV !== 'production') {\n          var REACT_ELEMENT_TYPE = typeof Symbol === 'function' && Symbol.for && Symbol.for('react.element') || 0xeac7;\n\n          var isValidElement = function (object) {\n            return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n          };\n\n          // By explicitly using `prop-types` you are opting into new development behavior.\n          // http://fb.me/prop-types-in-prod\n          var throwOnDirectAccess = true;\n          module.exports = __webpack_require__(14)(isValidElement, throwOnDirectAccess);\n        } else {\n          // By explicitly using `prop-types` you are opting into new production behavior.\n          // http://fb.me/prop-types-in-prod\n          module.exports = __webpack_require__(16)();\n        }\n\n        /* WEBPACK VAR INJECTION */\n      }).call(exports, __webpack_require__(2));\n\n      /***/\n    },\n    /* 1 */\n    /***/function (module, exports) {\n\n      module.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n      /***/\n    },\n    /* 2 */\n    /***/function (module, exports) {\n\n      // shim for using process in browser\n      var process = module.exports = {};\n\n      // cached from whatever global is present so that test runners that stub it\n      // don't break things.  But we need to wrap it in a try catch in case it is\n      // wrapped in strict mode code which doesn't define any globals.  It's inside a\n      // function because try/catches deoptimize in certain engines.\n\n      var cachedSetTimeout;\n      var cachedClearTimeout;\n\n      function defaultSetTimout() {\n        throw new Error('setTimeout has not been defined');\n      }\n      function defaultClearTimeout() {\n        throw new Error('clearTimeout has not been defined');\n      }\n      (function () {\n        try {\n          if (typeof setTimeout === 'function') {\n            cachedSetTimeout = setTimeout;\n          } else {\n            cachedSetTimeout = defaultSetTimout;\n          }\n        } catch (e) {\n          cachedSetTimeout = defaultSetTimout;\n        }\n        try {\n          if (typeof clearTimeout === 'function') {\n            cachedClearTimeout = clearTimeout;\n          } else {\n            cachedClearTimeout = defaultClearTimeout;\n          }\n        } catch (e) {\n          cachedClearTimeout = defaultClearTimeout;\n        }\n      })();\n      function runTimeout(fun) {\n        if (cachedSetTimeout === setTimeout) {\n          //normal enviroments in sane situations\n          return setTimeout(fun, 0);\n        }\n        // if setTimeout wasn't available but was latter defined\n        if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n          cachedSetTimeout = setTimeout;\n          return setTimeout(fun, 0);\n        }\n        try {\n          // when when somebody has screwed with setTimeout but no I.E. maddness\n          return cachedSetTimeout(fun, 0);\n        } catch (e) {\n          try {\n            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n            return cachedSetTimeout.call(null, fun, 0);\n          } catch (e) {\n            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n            return cachedSetTimeout.call(this, fun, 0);\n          }\n        }\n      }\n      function runClearTimeout(marker) {\n        if (cachedClearTimeout === clearTimeout) {\n          //normal enviroments in sane situations\n          return clearTimeout(marker);\n        }\n        // if clearTimeout wasn't available but was latter defined\n        if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n          cachedClearTimeout = clearTimeout;\n          return clearTimeout(marker);\n        }\n        try {\n          // when when somebody has screwed with setTimeout but no I.E. maddness\n          return cachedClearTimeout(marker);\n        } catch (e) {\n          try {\n            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally\n            return cachedClearTimeout.call(null, marker);\n          } catch (e) {\n            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n            // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n            return cachedClearTimeout.call(this, marker);\n          }\n        }\n      }\n      var queue = [];\n      var draining = false;\n      var currentQueue;\n      var queueIndex = -1;\n\n      function cleanUpNextTick() {\n        if (!draining || !currentQueue) {\n          return;\n        }\n        draining = false;\n        if (currentQueue.length) {\n          queue = currentQueue.concat(queue);\n        } else {\n          queueIndex = -1;\n        }\n        if (queue.length) {\n          drainQueue();\n        }\n      }\n\n      function drainQueue() {\n        if (draining) {\n          return;\n        }\n        var timeout = runTimeout(cleanUpNextTick);\n        draining = true;\n\n        var len = queue.length;\n        while (len) {\n          currentQueue = queue;\n          queue = [];\n          while (++queueIndex < len) {\n            if (currentQueue) {\n              currentQueue[queueIndex].run();\n            }\n          }\n          queueIndex = -1;\n          len = queue.length;\n        }\n        currentQueue = null;\n        draining = false;\n        runClearTimeout(timeout);\n      }\n\n      process.nextTick = function (fun) {\n        var args = new Array(arguments.length - 1);\n        if (arguments.length > 1) {\n          for (var i = 1; i < arguments.length; i++) {\n            args[i - 1] = arguments[i];\n          }\n        }\n        queue.push(new Item(fun, args));\n        if (queue.length === 1 && !draining) {\n          runTimeout(drainQueue);\n        }\n      };\n\n      // v8 likes predictible objects\n      function Item(fun, array) {\n        this.fun = fun;\n        this.array = array;\n      }\n      Item.prototype.run = function () {\n        this.fun.apply(null, this.array);\n      };\n      process.title = 'browser';\n      process.browser = true;\n      process.env = {};\n      process.argv = [];\n      process.version = ''; // empty string to avoid regexp issues\n      process.versions = {};\n\n      function noop() {}\n\n      process.on = noop;\n      process.addListener = noop;\n      process.once = noop;\n      process.off = noop;\n      process.removeListener = noop;\n      process.removeAllListeners = noop;\n      process.emit = noop;\n      process.prependListener = noop;\n      process.prependOnceListener = noop;\n\n      process.listeners = function (name) {\n        return [];\n      };\n\n      process.binding = function (name) {\n        throw new Error('process.binding is not supported');\n      };\n\n      process.cwd = function () {\n        return '/';\n      };\n      process.chdir = function (dir) {\n        throw new Error('process.chdir is not supported');\n      };\n      process.umask = function () {\n        return 0;\n      };\n\n      /***/\n    },\n    /* 3 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      exports.default = function (data) {\n        return data.reduce(function (a, b) {\n          return a + b;\n        }) / data.length;\n      };\n\n      /***/\n    },\n    /* 4 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      /**\n       * Copyright (c) 2013-present, Facebook, Inc.\n       * All rights reserved.\n       *\n       * This source code is licensed under the BSD-style license found in the\n       * LICENSE file in the root directory of this source tree. An additional grant\n       * of patent rights can be found in the PATENTS file in the same directory.\n       *\n       * \n       */\n\n      function makeEmptyFunction(arg) {\n        return function () {\n          return arg;\n        };\n      }\n\n      /**\n       * This function accepts and discards inputs; it has no side effects. This is\n       * primarily useful idiomatically for overridable function endpoints which\n       * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n       */\n      var emptyFunction = function emptyFunction() {};\n\n      emptyFunction.thatReturns = makeEmptyFunction;\n      emptyFunction.thatReturnsFalse = makeEmptyFunction(false);\n      emptyFunction.thatReturnsTrue = makeEmptyFunction(true);\n      emptyFunction.thatReturnsNull = makeEmptyFunction(null);\n      emptyFunction.thatReturnsThis = function () {\n        return this;\n      };\n      emptyFunction.thatReturnsArgument = function (arg) {\n        return arg;\n      };\n\n      module.exports = emptyFunction;\n\n      /***/\n    },\n    /* 5 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /* WEBPACK VAR INJECTION */\n      (function (process) {\n        /**\n        * Copyright (c) 2013-present, Facebook, Inc.\n        * All rights reserved.\n        *\n        * This source code is licensed under the BSD-style license found in the\n        * LICENSE file in the root directory of this source tree. An additional grant\n        * of patent rights can be found in the PATENTS file in the same directory.\n        *\n        */\n\n        /**\n         * Use invariant() to assert state which your program assumes to be true.\n         *\n         * Provide sprintf-style format (only %s is supported) and arguments\n         * to provide information about what broke and what you were\n         * expecting.\n         *\n         * The invariant message will be stripped in production, but the invariant\n         * will remain to ensure logic does not differ in production.\n         */\n\n        var validateFormat = function validateFormat(format) {};\n\n        if (process.env.NODE_ENV !== 'production') {\n          validateFormat = function validateFormat(format) {\n            if (format === undefined) {\n              throw new Error('invariant requires an error message argument');\n            }\n          };\n        }\n\n        function invariant(condition, format, a, b, c, d, e, f) {\n          validateFormat(format);\n\n          if (!condition) {\n            var error;\n            if (format === undefined) {\n              error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n            } else {\n              var args = [a, b, c, d, e, f];\n              var argIndex = 0;\n              error = new Error(format.replace(/%s/g, function () {\n                return args[argIndex++];\n              }));\n              error.name = 'Invariant Violation';\n            }\n\n            error.framesToPop = 1; // we don't care about invariant's own frame\n            throw error;\n          }\n        }\n\n        module.exports = invariant;\n        /* WEBPACK VAR INJECTION */\n      }).call(exports, __webpack_require__(2));\n\n      /***/\n    },\n    /* 6 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /**\n       * Copyright 2013-present, Facebook, Inc.\n       * All rights reserved.\n       *\n       * This source code is licensed under the BSD-style license found in the\n       * LICENSE file in the root directory of this source tree. An additional grant\n       * of patent rights can be found in the PATENTS file in the same directory.\n       */\n\n      var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\n      module.exports = ReactPropTypesSecret;\n\n      /***/\n    },\n    /* 7 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      exports.default = function (data) {\n        return Math.min.apply(Math, data);\n      };\n\n      /***/\n    },\n    /* 8 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /* WEBPACK VAR INJECTION */\n      (function (process) {\n        /**\n        * Copyright 2014-2015, Facebook, Inc.\n        * All rights reserved.\n        *\n        * This source code is licensed under the BSD-style license found in the\n        * LICENSE file in the root directory of this source tree. An additional grant\n        * of patent rights can be found in the PATENTS file in the same directory.\n        *\n        */\n\n        var emptyFunction = __webpack_require__(4);\n\n        /**\n         * Similar to invariant but only logs a warning if the condition is not met.\n         * This can be used to log issues in development environments in critical\n         * paths. Removing the logging code for production environments will keep the\n         * same logic and follow the same code paths.\n         */\n\n        var warning = emptyFunction;\n\n        if (process.env.NODE_ENV !== 'production') {\n          var printWarning = function printWarning(format) {\n            for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n              args[_key - 1] = arguments[_key];\n            }\n\n            var argIndex = 0;\n            var message = 'Warning: ' + format.replace(/%s/g, function () {\n              return args[argIndex++];\n            });\n            if (typeof console !== 'undefined') {\n              console.error(message);\n            }\n            try {\n              // --- Welcome to debugging React ---\n              // This error was thrown as a convenience so that you can use this stack\n              // to find the callsite that caused this warning to fire.\n              throw new Error(message);\n            } catch (x) {}\n          };\n\n          warning = function warning(condition, format) {\n            if (format === undefined) {\n              throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n            }\n\n            if (format.indexOf('Failed Composite propType: ') === 0) {\n              return; // Ignore CompositeComponent proptype check.\n            }\n\n            if (!condition) {\n              for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n                args[_key2 - 2] = arguments[_key2];\n              }\n\n              printWarning.apply(undefined, [format].concat(args));\n            }\n          };\n        }\n\n        module.exports = warning;\n        /* WEBPACK VAR INJECTION */\n      }).call(exports, __webpack_require__(2));\n\n      /***/\n    },\n    /* 9 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      exports.default = function (data) {\n        return Math.max.apply(Math, data);\n      };\n\n      /***/\n    },\n    /* 10 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _mean = __webpack_require__(3);\n\n      var _mean2 = _interopRequireDefault(_mean);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      exports.default = function (data) {\n        var dataMean = (0, _mean2.default)(data);\n        var sqDiff = data.map(function (n) {\n          return Math.pow(n - dataMean, 2);\n        });\n        var avgSqDiff = (0, _mean2.default)(sqDiff);\n        return Math.sqrt(avgSqDiff);\n      };\n\n      /***/\n    },\n    /* 11 */\n    /***/function (module, exports, __webpack_require__) {\n\n      module.exports = __webpack_require__(12);\n\n      /***/\n    },\n    /* 12 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      module.exports = __webpack_require__(13);\n\n      /***/\n    },\n    /* 13 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n      exports.SparklinesText = exports.SparklinesNormalBand = exports.SparklinesReferenceLine = exports.SparklinesSpots = exports.SparklinesBars = exports.SparklinesCurve = exports.SparklinesLine = exports.Sparklines = undefined;\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      var _SparklinesText = __webpack_require__(17);\n\n      var _SparklinesText2 = _interopRequireDefault(_SparklinesText);\n\n      var _SparklinesLine = __webpack_require__(18);\n\n      var _SparklinesLine2 = _interopRequireDefault(_SparklinesLine);\n\n      var _SparklinesCurve = __webpack_require__(19);\n\n      var _SparklinesCurve2 = _interopRequireDefault(_SparklinesCurve);\n\n      var _SparklinesBars = __webpack_require__(20);\n\n      var _SparklinesBars2 = _interopRequireDefault(_SparklinesBars);\n\n      var _SparklinesSpots = __webpack_require__(21);\n\n      var _SparklinesSpots2 = _interopRequireDefault(_SparklinesSpots);\n\n      var _SparklinesReferenceLine = __webpack_require__(22);\n\n      var _SparklinesReferenceLine2 = _interopRequireDefault(_SparklinesReferenceLine);\n\n      var _SparklinesNormalBand = __webpack_require__(27);\n\n      var _SparklinesNormalBand2 = _interopRequireDefault(_SparklinesNormalBand);\n\n      var _dataToPoints = __webpack_require__(28);\n\n      var _dataToPoints2 = _interopRequireDefault(_dataToPoints);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var Sparklines = function (_PureComponent) {\n        _inherits(Sparklines, _PureComponent);\n\n        function Sparklines(props) {\n          _classCallCheck(this, Sparklines);\n\n          return _possibleConstructorReturn(this, (Sparklines.__proto__ || Object.getPrototypeOf(Sparklines)).call(this, props));\n        }\n\n        _createClass(Sparklines, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                data = _props.data,\n                limit = _props.limit,\n                width = _props.width,\n                height = _props.height,\n                svgWidth = _props.svgWidth,\n                svgHeight = _props.svgHeight,\n                preserveAspectRatio = _props.preserveAspectRatio,\n                margin = _props.margin,\n                style = _props.style,\n                max = _props.max,\n                min = _props.min;\n\n            if (data.length === 0) return null;\n\n            var points = (0, _dataToPoints2.default)({ data: data, limit: limit, width: width, height: height, margin: margin, max: max, min: min });\n\n            var svgOpts = { style: style, viewBox: '0 0 ' + width + ' ' + height, preserveAspectRatio: preserveAspectRatio };\n            if (svgWidth > 0) svgOpts.width = svgWidth;\n            if (svgHeight > 0) svgOpts.height = svgHeight;\n\n            return _react2.default.createElement('svg', svgOpts, _react2.default.Children.map(this.props.children, function (child) {\n              return _react2.default.cloneElement(child, { data: data, points: points, width: width, height: height, margin: margin });\n            }));\n          }\n        }]);\n\n        return Sparklines;\n      }(_react.PureComponent);\n\n      Sparklines.propTypes = {\n        data: _propTypes2.default.array,\n        limit: _propTypes2.default.number,\n        width: _propTypes2.default.number,\n        height: _propTypes2.default.number,\n        svgWidth: _propTypes2.default.number,\n        svgHeight: _propTypes2.default.number,\n        preserveAspectRatio: _propTypes2.default.string,\n        margin: _propTypes2.default.number,\n        style: _propTypes2.default.object,\n        min: _propTypes2.default.number,\n        max: _propTypes2.default.number,\n        onMouseMove: _propTypes2.default.func\n      };\n      Sparklines.defaultProps = {\n        data: [],\n        width: 240,\n        height: 60,\n        //Scale the graphic content of the given element non-uniformly if necessary such that the element's bounding box exactly matches the viewport rectangle.\n        preserveAspectRatio: 'none', //https://www.w3.org/TR/SVG/coords.html#PreserveAspectRatioAttribute\n        margin: 2\n      };\n      exports.Sparklines = Sparklines;\n      exports.SparklinesLine = _SparklinesLine2.default;\n      exports.SparklinesCurve = _SparklinesCurve2.default;\n      exports.SparklinesBars = _SparklinesBars2.default;\n      exports.SparklinesSpots = _SparklinesSpots2.default;\n      exports.SparklinesReferenceLine = _SparklinesReferenceLine2.default;\n      exports.SparklinesNormalBand = _SparklinesNormalBand2.default;\n      exports.SparklinesText = _SparklinesText2.default;\n\n      /***/\n    },\n    /* 14 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /* WEBPACK VAR INJECTION */\n      (function (process) {\n        /**\n        * Copyright 2013-present, Facebook, Inc.\n        * All rights reserved.\n        *\n        * This source code is licensed under the BSD-style license found in the\n        * LICENSE file in the root directory of this source tree. An additional grant\n        * of patent rights can be found in the PATENTS file in the same directory.\n        */\n\n        var emptyFunction = __webpack_require__(4);\n        var invariant = __webpack_require__(5);\n        var warning = __webpack_require__(8);\n\n        var ReactPropTypesSecret = __webpack_require__(6);\n        var checkPropTypes = __webpack_require__(15);\n\n        module.exports = function (isValidElement, throwOnDirectAccess) {\n          /* global Symbol */\n          var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n          var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n          /**\n           * Returns the iterator method function contained on the iterable object.\n           *\n           * Be sure to invoke the function with the iterable as context:\n           *\n           *     var iteratorFn = getIteratorFn(myIterable);\n           *     if (iteratorFn) {\n           *       var iterator = iteratorFn.call(myIterable);\n           *       ...\n           *     }\n           *\n           * @param {?object} maybeIterable\n           * @return {?function}\n           */\n          function getIteratorFn(maybeIterable) {\n            var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n            if (typeof iteratorFn === 'function') {\n              return iteratorFn;\n            }\n          }\n\n          /**\n           * Collection of methods that allow declaration and validation of props that are\n           * supplied to React components. Example usage:\n           *\n           *   var Props = require('ReactPropTypes');\n           *   var MyArticle = React.createClass({\n           *     propTypes: {\n           *       // An optional string prop named \"description\".\n           *       description: Props.string,\n           *\n           *       // A required enum prop named \"category\".\n           *       category: Props.oneOf(['News','Photos']).isRequired,\n           *\n           *       // A prop named \"dialog\" that requires an instance of Dialog.\n           *       dialog: Props.instanceOf(Dialog).isRequired\n           *     },\n           *     render: function() { ... }\n           *   });\n           *\n           * A more formal specification of how these methods are used:\n           *\n           *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n           *   decl := ReactPropTypes.{type}(.isRequired)?\n           *\n           * Each and every declaration produces a function with the same signature. This\n           * allows the creation of custom validation functions. For example:\n           *\n           *  var MyLink = React.createClass({\n           *    propTypes: {\n           *      // An optional string or URI prop named \"href\".\n           *      href: function(props, propName, componentName) {\n           *        var propValue = props[propName];\n           *        if (propValue != null && typeof propValue !== 'string' &&\n           *            !(propValue instanceof URI)) {\n           *          return new Error(\n           *            'Expected a string or an URI for ' + propName + ' in ' +\n           *            componentName\n           *          );\n           *        }\n           *      }\n           *    },\n           *    render: function() {...}\n           *  });\n           *\n           * @internal\n           */\n\n          var ANONYMOUS = '<<anonymous>>';\n\n          // Important!\n          // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n          var ReactPropTypes = {\n            array: createPrimitiveTypeChecker('array'),\n            bool: createPrimitiveTypeChecker('boolean'),\n            func: createPrimitiveTypeChecker('function'),\n            number: createPrimitiveTypeChecker('number'),\n            object: createPrimitiveTypeChecker('object'),\n            string: createPrimitiveTypeChecker('string'),\n            symbol: createPrimitiveTypeChecker('symbol'),\n\n            any: createAnyTypeChecker(),\n            arrayOf: createArrayOfTypeChecker,\n            element: createElementTypeChecker(),\n            instanceOf: createInstanceTypeChecker,\n            node: createNodeChecker(),\n            objectOf: createObjectOfTypeChecker,\n            oneOf: createEnumTypeChecker,\n            oneOfType: createUnionTypeChecker,\n            shape: createShapeTypeChecker\n          };\n\n          /**\n           * inlined Object.is polyfill to avoid requiring consumers ship their own\n           * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n           */\n          /*eslint-disable no-self-compare*/\n          function is(x, y) {\n            // SameValue algorithm\n            if (x === y) {\n              // Steps 1-5, 7-10\n              // Steps 6.b-6.e: +0 != -0\n              return x !== 0 || 1 / x === 1 / y;\n            } else {\n              // Step 6.a: NaN == NaN\n              return x !== x && y !== y;\n            }\n          }\n          /*eslint-enable no-self-compare*/\n\n          /**\n           * We use an Error-like object for backward compatibility as people may call\n           * PropTypes directly and inspect their output. However, we don't use real\n           * Errors anymore. We don't inspect their stack anyway, and creating them\n           * is prohibitively expensive if they are created too often, such as what\n           * happens in oneOfType() for any type before the one that matched.\n           */\n          function PropTypeError(message) {\n            this.message = message;\n            this.stack = '';\n          }\n          // Make `instanceof Error` still work for returned errors.\n          PropTypeError.prototype = Error.prototype;\n\n          function createChainableTypeChecker(validate) {\n            if (process.env.NODE_ENV !== 'production') {\n              var manualPropTypeCallCache = {};\n              var manualPropTypeWarningCount = 0;\n            }\n            function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n              componentName = componentName || ANONYMOUS;\n              propFullName = propFullName || propName;\n\n              if (secret !== ReactPropTypesSecret) {\n                if (throwOnDirectAccess) {\n                  // New behavior only for users of `prop-types` package\n                  invariant(false, 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use `PropTypes.checkPropTypes()` to call them. ' + 'Read more at http://fb.me/use-check-prop-types');\n                } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n                  // Old behavior for people using React.PropTypes\n                  var cacheKey = componentName + ':' + propName;\n                  if (!manualPropTypeCallCache[cacheKey] &&\n                  // Avoid spamming the console because they are often not actionable except for lib authors\n                  manualPropTypeWarningCount < 3) {\n                    warning(false, 'You are manually calling a React.PropTypes validation ' + 'function for the `%s` prop on `%s`. This is deprecated ' + 'and will throw in the standalone `prop-types` package. ' + 'You may be seeing this warning due to a third-party PropTypes ' + 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.', propFullName, componentName);\n                    manualPropTypeCallCache[cacheKey] = true;\n                    manualPropTypeWarningCount++;\n                  }\n                }\n              }\n              if (props[propName] == null) {\n                if (isRequired) {\n                  if (props[propName] === null) {\n                    return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n                  }\n                  return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n                }\n                return null;\n              } else {\n                return validate(props, propName, componentName, location, propFullName);\n              }\n            }\n\n            var chainedCheckType = checkType.bind(null, false);\n            chainedCheckType.isRequired = checkType.bind(null, true);\n\n            return chainedCheckType;\n          }\n\n          function createPrimitiveTypeChecker(expectedType) {\n            function validate(props, propName, componentName, location, propFullName, secret) {\n              var propValue = props[propName];\n              var propType = getPropType(propValue);\n              if (propType !== expectedType) {\n                // `propValue` being instance of, say, date/regexp, pass the 'object'\n                // check, but we can offer a more precise error message here rather than\n                // 'of type `object`'.\n                var preciseType = getPreciseType(propValue);\n\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createAnyTypeChecker() {\n            return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n          }\n\n          function createArrayOfTypeChecker(typeChecker) {\n            function validate(props, propName, componentName, location, propFullName) {\n              if (typeof typeChecker !== 'function') {\n                return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n              }\n              var propValue = props[propName];\n              if (!Array.isArray(propValue)) {\n                var propType = getPropType(propValue);\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n              }\n              for (var i = 0; i < propValue.length; i++) {\n                var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n                if (error instanceof Error) {\n                  return error;\n                }\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createElementTypeChecker() {\n            function validate(props, propName, componentName, location, propFullName) {\n              var propValue = props[propName];\n              if (!isValidElement(propValue)) {\n                var propType = getPropType(propValue);\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createInstanceTypeChecker(expectedClass) {\n            function validate(props, propName, componentName, location, propFullName) {\n              if (!(props[propName] instanceof expectedClass)) {\n                var expectedClassName = expectedClass.name || ANONYMOUS;\n                var actualClassName = getClassName(props[propName]);\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createEnumTypeChecker(expectedValues) {\n            if (!Array.isArray(expectedValues)) {\n              process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n              return emptyFunction.thatReturnsNull;\n            }\n\n            function validate(props, propName, componentName, location, propFullName) {\n              var propValue = props[propName];\n              for (var i = 0; i < expectedValues.length; i++) {\n                if (is(propValue, expectedValues[i])) {\n                  return null;\n                }\n              }\n\n              var valuesString = JSON.stringify(expectedValues);\n              return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createObjectOfTypeChecker(typeChecker) {\n            function validate(props, propName, componentName, location, propFullName) {\n              if (typeof typeChecker !== 'function') {\n                return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n              }\n              var propValue = props[propName];\n              var propType = getPropType(propValue);\n              if (propType !== 'object') {\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n              }\n              for (var key in propValue) {\n                if (propValue.hasOwnProperty(key)) {\n                  var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n                  if (error instanceof Error) {\n                    return error;\n                  }\n                }\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createUnionTypeChecker(arrayOfTypeCheckers) {\n            if (!Array.isArray(arrayOfTypeCheckers)) {\n              process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n              return emptyFunction.thatReturnsNull;\n            }\n\n            for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n              var checker = arrayOfTypeCheckers[i];\n              if (typeof checker !== 'function') {\n                warning(false, 'Invalid argument supplid to oneOfType. Expected an array of check functions, but ' + 'received %s at index %s.', getPostfixForTypeWarning(checker), i);\n                return emptyFunction.thatReturnsNull;\n              }\n            }\n\n            function validate(props, propName, componentName, location, propFullName) {\n              for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n                var checker = arrayOfTypeCheckers[i];\n                if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n                  return null;\n                }\n              }\n\n              return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createNodeChecker() {\n            function validate(props, propName, componentName, location, propFullName) {\n              if (!isNode(props[propName])) {\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function createShapeTypeChecker(shapeTypes) {\n            function validate(props, propName, componentName, location, propFullName) {\n              var propValue = props[propName];\n              var propType = getPropType(propValue);\n              if (propType !== 'object') {\n                return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n              }\n              for (var key in shapeTypes) {\n                var checker = shapeTypes[key];\n                if (!checker) {\n                  continue;\n                }\n                var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n                if (error) {\n                  return error;\n                }\n              }\n              return null;\n            }\n            return createChainableTypeChecker(validate);\n          }\n\n          function isNode(propValue) {\n            switch (typeof propValue) {\n              case 'number':\n              case 'string':\n              case 'undefined':\n                return true;\n              case 'boolean':\n                return !propValue;\n              case 'object':\n                if (Array.isArray(propValue)) {\n                  return propValue.every(isNode);\n                }\n                if (propValue === null || isValidElement(propValue)) {\n                  return true;\n                }\n\n                var iteratorFn = getIteratorFn(propValue);\n                if (iteratorFn) {\n                  var iterator = iteratorFn.call(propValue);\n                  var step;\n                  if (iteratorFn !== propValue.entries) {\n                    while (!(step = iterator.next()).done) {\n                      if (!isNode(step.value)) {\n                        return false;\n                      }\n                    }\n                  } else {\n                    // Iterator will provide entry [k,v] tuples rather than values.\n                    while (!(step = iterator.next()).done) {\n                      var entry = step.value;\n                      if (entry) {\n                        if (!isNode(entry[1])) {\n                          return false;\n                        }\n                      }\n                    }\n                  }\n                } else {\n                  return false;\n                }\n\n                return true;\n              default:\n                return false;\n            }\n          }\n\n          function isSymbol(propType, propValue) {\n            // Native Symbol.\n            if (propType === 'symbol') {\n              return true;\n            }\n\n            // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n            if (propValue['@@toStringTag'] === 'Symbol') {\n              return true;\n            }\n\n            // Fallback for non-spec compliant Symbols which are polyfilled.\n            if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n              return true;\n            }\n\n            return false;\n          }\n\n          // Equivalent of `typeof` but with special handling for array and regexp.\n          function getPropType(propValue) {\n            var propType = typeof propValue;\n            if (Array.isArray(propValue)) {\n              return 'array';\n            }\n            if (propValue instanceof RegExp) {\n              // Old webkits (at least until Android 4.0) return 'function' rather than\n              // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n              // passes PropTypes.object.\n              return 'object';\n            }\n            if (isSymbol(propType, propValue)) {\n              return 'symbol';\n            }\n            return propType;\n          }\n\n          // This handles more types than `getPropType`. Only used for error messages.\n          // See `createPrimitiveTypeChecker`.\n          function getPreciseType(propValue) {\n            if (typeof propValue === 'undefined' || propValue === null) {\n              return '' + propValue;\n            }\n            var propType = getPropType(propValue);\n            if (propType === 'object') {\n              if (propValue instanceof Date) {\n                return 'date';\n              } else if (propValue instanceof RegExp) {\n                return 'regexp';\n              }\n            }\n            return propType;\n          }\n\n          // Returns a string that is postfixed to a warning about an invalid type.\n          // For example, \"undefined\" or \"of type array\"\n          function getPostfixForTypeWarning(value) {\n            var type = getPreciseType(value);\n            switch (type) {\n              case 'array':\n              case 'object':\n                return 'an ' + type;\n              case 'boolean':\n              case 'date':\n              case 'regexp':\n                return 'a ' + type;\n              default:\n                return type;\n            }\n          }\n\n          // Returns class name of the object, if any.\n          function getClassName(propValue) {\n            if (!propValue.constructor || !propValue.constructor.name) {\n              return ANONYMOUS;\n            }\n            return propValue.constructor.name;\n          }\n\n          ReactPropTypes.checkPropTypes = checkPropTypes;\n          ReactPropTypes.PropTypes = ReactPropTypes;\n\n          return ReactPropTypes;\n        };\n\n        /* WEBPACK VAR INJECTION */\n      }).call(exports, __webpack_require__(2));\n\n      /***/\n    },\n    /* 15 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /* WEBPACK VAR INJECTION */\n      (function (process) {\n        /**\n        * Copyright 2013-present, Facebook, Inc.\n        * All rights reserved.\n        *\n        * This source code is licensed under the BSD-style license found in the\n        * LICENSE file in the root directory of this source tree. An additional grant\n        * of patent rights can be found in the PATENTS file in the same directory.\n        */\n\n        if (process.env.NODE_ENV !== 'production') {\n          var invariant = __webpack_require__(5);\n          var warning = __webpack_require__(8);\n          var ReactPropTypesSecret = __webpack_require__(6);\n          var loggedTypeFailures = {};\n        }\n\n        /**\n         * Assert that the values match with the type specs.\n         * Error messages are memorized and will only be shown once.\n         *\n         * @param {object} typeSpecs Map of name to a ReactPropType\n         * @param {object} values Runtime values that need to be type-checked\n         * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n         * @param {string} componentName Name of the component for error messages.\n         * @param {?Function} getStack Returns the component stack.\n         * @private\n         */\n        function checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n          if (process.env.NODE_ENV !== 'production') {\n            for (var typeSpecName in typeSpecs) {\n              if (typeSpecs.hasOwnProperty(typeSpecName)) {\n                var error;\n                // Prop type validation may throw. In case they do, we don't want to\n                // fail the render phase where it didn't fail before. So we log it.\n                // After these have been cleaned up, we'll let them throw.\n                try {\n                  // This is intentionally an invariant that gets caught. It's the same\n                  // behavior as without this statement except with a better message.\n                  invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'React.PropTypes.', componentName || 'React class', location, typeSpecName);\n                  error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n                } catch (ex) {\n                  error = ex;\n                }\n                warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n                if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n                  // Only monitor this failure once because there tends to be a lot of the\n                  // same error.\n                  loggedTypeFailures[error.message] = true;\n\n                  var stack = getStack ? getStack() : '';\n\n                  warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n                }\n              }\n            }\n          }\n        }\n\n        module.exports = checkPropTypes;\n\n        /* WEBPACK VAR INJECTION */\n      }).call(exports, __webpack_require__(2));\n\n      /***/\n    },\n    /* 16 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n      /**\n       * Copyright 2013-present, Facebook, Inc.\n       * All rights reserved.\n       *\n       * This source code is licensed under the BSD-style license found in the\n       * LICENSE file in the root directory of this source tree. An additional grant\n       * of patent rights can be found in the PATENTS file in the same directory.\n       */\n\n      var emptyFunction = __webpack_require__(4);\n      var invariant = __webpack_require__(5);\n      var ReactPropTypesSecret = __webpack_require__(6);\n\n      module.exports = function () {\n        function shim(props, propName, componentName, location, propFullName, secret) {\n          if (secret === ReactPropTypesSecret) {\n            // It is still safe when called from React.\n            return;\n          }\n          invariant(false, 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use PropTypes.checkPropTypes() to call them. ' + 'Read more at http://fb.me/use-check-prop-types');\n        };\n        shim.isRequired = shim;\n        function getShim() {\n          return shim;\n        };\n        // Important!\n        // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n        var ReactPropTypes = {\n          array: shim,\n          bool: shim,\n          func: shim,\n          number: shim,\n          object: shim,\n          string: shim,\n          symbol: shim,\n\n          any: shim,\n          arrayOf: getShim,\n          element: shim,\n          instanceOf: getShim,\n          node: shim,\n          objectOf: getShim,\n          oneOf: getShim,\n          oneOfType: getShim,\n          shape: getShim\n        };\n\n        ReactPropTypes.checkPropTypes = emptyFunction;\n        ReactPropTypes.PropTypes = ReactPropTypes;\n\n        return ReactPropTypes;\n      };\n\n      /***/\n    },\n    /* 17 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesText = function (_React$Component) {\n        _inherits(SparklinesText, _React$Component);\n\n        function SparklinesText() {\n          _classCallCheck(this, SparklinesText);\n\n          return _possibleConstructorReturn(this, (SparklinesText.__proto__ || Object.getPrototypeOf(SparklinesText)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesText, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                point = _props.point,\n                text = _props.text,\n                fontSize = _props.fontSize,\n                fontFamily = _props.fontFamily;\n            var x = point.x,\n                y = point.y;\n\n            return _react2.default.createElement('g', null, _react2.default.createElement('text', { x: x, y: y, fontFamily: fontFamily || \"Verdana\", fontSize: fontSize || 10 }, text));\n          }\n        }]);\n\n        return SparklinesText;\n      }(_react2.default.Component);\n\n      SparklinesText.propTypes = {\n        text: _propTypes2.default.string,\n        point: _propTypes2.default.object,\n        fontSize: _propTypes2.default.number,\n        fontFamily: _propTypes2.default.string\n      };\n      SparklinesText.defaultProps = {\n        text: '',\n        point: { x: 0, y: 0 }\n      };\n      exports.default = SparklinesText;\n\n      /***/\n    },\n    /* 18 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesLine = function (_React$Component) {\n        _inherits(SparklinesLine, _React$Component);\n\n        function SparklinesLine() {\n          _classCallCheck(this, SparklinesLine);\n\n          return _possibleConstructorReturn(this, (SparklinesLine.__proto__ || Object.getPrototypeOf(SparklinesLine)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesLine, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                data = _props.data,\n                points = _props.points,\n                width = _props.width,\n                height = _props.height,\n                margin = _props.margin,\n                color = _props.color,\n                style = _props.style,\n                onMouseMove = _props.onMouseMove;\n\n            var linePoints = points.map(function (p) {\n              return [p.x, p.y];\n            }).reduce(function (a, b) {\n              return a.concat(b);\n            });\n\n            var closePolyPoints = [points[points.length - 1].x, height - margin, margin, height - margin, margin, points[0].y];\n\n            var fillPoints = linePoints.concat(closePolyPoints);\n\n            var lineStyle = {\n              stroke: color || style.stroke || 'slategray',\n              strokeWidth: style.strokeWidth || '1',\n              strokeLinejoin: style.strokeLinejoin || 'round',\n              strokeLinecap: style.strokeLinecap || 'round',\n              fill: 'none'\n            };\n            var fillStyle = {\n              stroke: style.stroke || 'none',\n              strokeWidth: '0',\n              fillOpacity: style.fillOpacity || '.1',\n              fill: style.fill || color || 'slategray',\n              pointerEvents: 'auto'\n            };\n\n            var tooltips = points.map(function (p, i) {\n              return _react2.default.createElement('circle', {\n                key: i,\n                cx: p.x,\n                cy: p.y,\n                r: 2,\n                style: fillStyle,\n                onMouseEnter: function onMouseEnter(e) {\n                  return onMouseMove('enter', data[i], p);\n                },\n                onClick: function onClick(e) {\n                  return onMouseMove('click', data[i], p);\n                }\n              });\n            });\n\n            return _react2.default.createElement('g', null, tooltips, _react2.default.createElement('polyline', { points: fillPoints.join(' '), style: fillStyle }), _react2.default.createElement('polyline', { points: linePoints.join(' '), style: lineStyle }));\n          }\n        }]);\n\n        return SparklinesLine;\n      }(_react2.default.Component);\n\n      SparklinesLine.propTypes = {\n        color: _propTypes2.default.string,\n        style: _propTypes2.default.object\n      };\n      SparklinesLine.defaultProps = {\n        style: {},\n        onMouseMove: function onMouseMove() {}\n      };\n      exports.default = SparklinesLine;\n\n      /***/\n    },\n    /* 19 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesCurve = function (_React$Component) {\n        _inherits(SparklinesCurve, _React$Component);\n\n        function SparklinesCurve() {\n          _classCallCheck(this, SparklinesCurve);\n\n          return _possibleConstructorReturn(this, (SparklinesCurve.__proto__ || Object.getPrototypeOf(SparklinesCurve)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesCurve, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                width = _props.width,\n                height = _props.height,\n                margin = _props.margin,\n                color = _props.color,\n                style = _props.style,\n                _props$divisor = _props.divisor,\n                divisor = _props$divisor === undefined ? 0.25 : _props$divisor;\n\n            var prev = void 0;\n            var curve = function curve(p) {\n              var res = void 0;\n              if (!prev) {\n                res = [p.x, p.y];\n              } else {\n                var len = (p.x - prev.x) * divisor;\n                res = [\"C\",\n                //x1\n                prev.x + len,\n                //y1\n                prev.y,\n                //x2,\n                p.x - len,\n                //y2,\n                p.y,\n                //x,\n                p.x,\n                //y\n                p.y];\n              }\n              prev = p;\n              return res;\n            };\n            var linePoints = points.map(function (p) {\n              return curve(p);\n            }).reduce(function (a, b) {\n              return a.concat(b);\n            });\n            var closePolyPoints = [\"L\" + points[points.length - 1].x, height - margin, margin, height - margin, margin, points[0].y];\n            var fillPoints = linePoints.concat(closePolyPoints);\n\n            var lineStyle = {\n              stroke: color || style.stroke || 'slategray',\n              strokeWidth: style.strokeWidth || '1',\n              strokeLinejoin: style.strokeLinejoin || 'round',\n              strokeLinecap: style.strokeLinecap || 'round',\n              fill: 'none'\n            };\n            var fillStyle = {\n              stroke: style.stroke || 'none',\n              strokeWidth: '0',\n              fillOpacity: style.fillOpacity || '.1',\n              fill: style.fill || color || 'slategray'\n            };\n\n            return _react2.default.createElement('g', null, _react2.default.createElement('path', { d: \"M\" + fillPoints.join(' '), style: fillStyle }), _react2.default.createElement('path', { d: \"M\" + linePoints.join(' '), style: lineStyle }));\n          }\n        }]);\n\n        return SparklinesCurve;\n      }(_react2.default.Component);\n\n      SparklinesCurve.propTypes = {\n        color: _propTypes2.default.string,\n        style: _propTypes2.default.object\n      };\n      SparklinesCurve.defaultProps = {\n        style: {}\n      };\n      exports.default = SparklinesCurve;\n\n      /***/\n    },\n    /* 20 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesBars = function (_React$Component) {\n        _inherits(SparklinesBars, _React$Component);\n\n        function SparklinesBars() {\n          _classCallCheck(this, SparklinesBars);\n\n          return _possibleConstructorReturn(this, (SparklinesBars.__proto__ || Object.getPrototypeOf(SparklinesBars)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesBars, [{\n          key: 'render',\n          value: function render() {\n            var _this2 = this;\n\n            var _props = this.props,\n                points = _props.points,\n                height = _props.height,\n                style = _props.style,\n                barWidth = _props.barWidth,\n                margin = _props.margin,\n                onMouseMove = _props.onMouseMove;\n\n            var strokeWidth = 1 * (style && style.strokeWidth || 0);\n            var marginWidth = margin ? 2 * margin : 0;\n            var width = barWidth || (points && points.length >= 2 ? Math.max(0, points[1].x - points[0].x - strokeWidth - marginWidth) : 0);\n\n            return _react2.default.createElement('g', { transform: 'scale(1,-1)' }, points.map(function (p, i) {\n              return _react2.default.createElement('rect', {\n                key: i,\n                x: p.x - (width + strokeWidth) / 2,\n                y: -height,\n                width: width,\n                height: Math.max(0, height - p.y),\n                style: style,\n                onMouseMove: onMouseMove && onMouseMove.bind(_this2, p)\n              });\n            }));\n          }\n        }]);\n\n        return SparklinesBars;\n      }(_react2.default.Component);\n\n      SparklinesBars.propTypes = {\n        points: _propTypes2.default.arrayOf(_propTypes2.default.object),\n        height: _propTypes2.default.number,\n        style: _propTypes2.default.object,\n        barWidth: _propTypes2.default.number,\n        margin: _propTypes2.default.number,\n        onMouseMove: _propTypes2.default.func\n      };\n      SparklinesBars.defaultProps = {\n        style: { fill: 'slategray' }\n      };\n      exports.default = SparklinesBars;\n\n      /***/\n    },\n    /* 21 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesSpots = function (_React$Component) {\n        _inherits(SparklinesSpots, _React$Component);\n\n        function SparklinesSpots() {\n          _classCallCheck(this, SparklinesSpots);\n\n          return _possibleConstructorReturn(this, (SparklinesSpots.__proto__ || Object.getPrototypeOf(SparklinesSpots)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesSpots, [{\n          key: 'lastDirection',\n          value: function lastDirection(points) {\n\n            Math.sign = Math.sign || function (x) {\n              return x > 0 ? 1 : -1;\n            };\n\n            return points.length < 2 ? 0 : Math.sign(points[points.length - 2].y - points[points.length - 1].y);\n          }\n        }, {\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                width = _props.width,\n                height = _props.height,\n                size = _props.size,\n                style = _props.style,\n                spotColors = _props.spotColors;\n\n            var startSpot = _react2.default.createElement('circle', {\n              cx: points[0].x,\n              cy: points[0].y,\n              r: size,\n              style: style });\n\n            var endSpot = _react2.default.createElement('circle', {\n              cx: points[points.length - 1].x,\n              cy: points[points.length - 1].y,\n              r: size,\n              style: style || { fill: spotColors[this.lastDirection(points)] } });\n\n            return _react2.default.createElement('g', null, style && startSpot, endSpot);\n          }\n        }]);\n\n        return SparklinesSpots;\n      }(_react2.default.Component);\n\n      SparklinesSpots.propTypes = {\n        size: _propTypes2.default.number,\n        style: _propTypes2.default.object,\n        spotColors: _propTypes2.default.object\n      };\n      SparklinesSpots.defaultProps = {\n        size: 2,\n        spotColors: {\n          '-1': 'red',\n          '0': 'black',\n          '1': 'green'\n        }\n      };\n      exports.default = SparklinesSpots;\n\n      /***/\n    },\n    /* 22 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      var _dataProcessing = __webpack_require__(23);\n\n      var dataProcessing = _interopRequireWildcard(_dataProcessing);\n\n      function _interopRequireWildcard(obj) {\n        if (obj && obj.__esModule) {\n          return obj;\n        } else {\n          var newObj = {};if (obj != null) {\n            for (var key in obj) {\n              if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];\n            }\n          }newObj.default = obj;return newObj;\n        }\n      }\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesReferenceLine = function (_React$Component) {\n        _inherits(SparklinesReferenceLine, _React$Component);\n\n        function SparklinesReferenceLine() {\n          _classCallCheck(this, SparklinesReferenceLine);\n\n          return _possibleConstructorReturn(this, (SparklinesReferenceLine.__proto__ || Object.getPrototypeOf(SparklinesReferenceLine)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesReferenceLine, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                margin = _props.margin,\n                type = _props.type,\n                style = _props.style,\n                value = _props.value;\n\n            var ypoints = points.map(function (p) {\n              return p.y;\n            });\n            var y = type == 'custom' ? value : dataProcessing[type](ypoints);\n\n            return _react2.default.createElement('line', {\n              x1: points[0].x, y1: y + margin,\n              x2: points[points.length - 1].x, y2: y + margin,\n              style: style });\n          }\n        }]);\n\n        return SparklinesReferenceLine;\n      }(_react2.default.Component);\n\n      SparklinesReferenceLine.propTypes = {\n        type: _propTypes2.default.oneOf(['max', 'min', 'mean', 'avg', 'median', 'custom']),\n        value: _propTypes2.default.number,\n        style: _propTypes2.default.object\n      };\n      SparklinesReferenceLine.defaultProps = {\n        type: 'mean',\n        style: { stroke: 'red', strokeOpacity: .75, strokeDasharray: '2, 2' }\n      };\n      exports.default = SparklinesReferenceLine;\n\n      /***/\n    },\n    /* 23 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n      exports.variance = exports.stdev = exports.median = exports.midRange = exports.avg = exports.mean = exports.max = exports.min = undefined;\n\n      var _min2 = __webpack_require__(7);\n\n      var _min3 = _interopRequireDefault(_min2);\n\n      var _mean2 = __webpack_require__(3);\n\n      var _mean3 = _interopRequireDefault(_mean2);\n\n      var _midRange2 = __webpack_require__(24);\n\n      var _midRange3 = _interopRequireDefault(_midRange2);\n\n      var _median2 = __webpack_require__(25);\n\n      var _median3 = _interopRequireDefault(_median2);\n\n      var _stdev2 = __webpack_require__(10);\n\n      var _stdev3 = _interopRequireDefault(_stdev2);\n\n      var _variance2 = __webpack_require__(26);\n\n      var _variance3 = _interopRequireDefault(_variance2);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      exports.min = _min3.default;\n      exports.max = _min3.default;\n      exports.mean = _mean3.default;\n      exports.avg = _mean3.default;\n      exports.midRange = _midRange3.default;\n      exports.median = _median3.default;\n      exports.stdev = _stdev3.default;\n      exports.variance = _variance3.default;\n\n      /***/\n    },\n    /* 24 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _min = __webpack_require__(7);\n\n      var _min2 = _interopRequireDefault(_min);\n\n      var _max = __webpack_require__(9);\n\n      var _max2 = _interopRequireDefault(_max);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      exports.default = function (data) {\n        return (0, _max2.default)(data) - (0, _min2.default)(data) / 2;\n      };\n\n      /***/\n    },\n    /* 25 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      exports.default = function (data) {\n        return data.sort(function (a, b) {\n          return a - b;\n        })[Math.floor(data.length / 2)];\n      };\n\n      /***/\n    },\n    /* 26 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _mean = __webpack_require__(3);\n\n      var _mean2 = _interopRequireDefault(_mean);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      exports.default = function (data) {\n        var dataMean = (0, _mean2.default)(data);\n        var sq = data.map(function (n) {\n          return Math.pow(n - dataMean, 2);\n        });\n        return (0, _mean2.default)(sq);\n      };\n\n      /***/\n    },\n    /* 27 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _createClass = function () {\n        function defineProperties(target, props) {\n          for (var i = 0; i < props.length; i++) {\n            var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);\n          }\n        }return function (Constructor, protoProps, staticProps) {\n          if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;\n        };\n      }();\n\n      var _propTypes = __webpack_require__(0);\n\n      var _propTypes2 = _interopRequireDefault(_propTypes);\n\n      var _react = __webpack_require__(1);\n\n      var _react2 = _interopRequireDefault(_react);\n\n      var _mean = __webpack_require__(3);\n\n      var _mean2 = _interopRequireDefault(_mean);\n\n      var _stdev = __webpack_require__(10);\n\n      var _stdev2 = _interopRequireDefault(_stdev);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      function _classCallCheck(instance, Constructor) {\n        if (!(instance instanceof Constructor)) {\n          throw new TypeError(\"Cannot call a class as a function\");\n        }\n      }\n\n      function _possibleConstructorReturn(self, call) {\n        if (!self) {\n          throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n        }return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n      }\n\n      function _inherits(subClass, superClass) {\n        if (typeof superClass !== \"function\" && superClass !== null) {\n          throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n        }subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n      }\n\n      var SparklinesNormalBand = function (_React$Component) {\n        _inherits(SparklinesNormalBand, _React$Component);\n\n        function SparklinesNormalBand() {\n          _classCallCheck(this, SparklinesNormalBand);\n\n          return _possibleConstructorReturn(this, (SparklinesNormalBand.__proto__ || Object.getPrototypeOf(SparklinesNormalBand)).apply(this, arguments));\n        }\n\n        _createClass(SparklinesNormalBand, [{\n          key: 'render',\n          value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                margin = _props.margin,\n                style = _props.style;\n\n            var ypoints = points.map(function (p) {\n              return p.y;\n            });\n            var dataMean = (0, _mean2.default)(ypoints);\n            var dataStdev = (0, _stdev2.default)(ypoints);\n\n            return _react2.default.createElement('rect', { x: points[0].x, y: dataMean - dataStdev + margin,\n              width: points[points.length - 1].x - points[0].x, height: _stdev2.default * 2,\n              style: style });\n          }\n        }]);\n\n        return SparklinesNormalBand;\n      }(_react2.default.Component);\n\n      SparklinesNormalBand.propTypes = {\n        style: _propTypes2.default.object\n      };\n      SparklinesNormalBand.defaultProps = {\n        style: { fill: 'red', fillOpacity: .1 }\n      };\n      exports.default = SparklinesNormalBand;\n\n      /***/\n    },\n    /* 28 */\n    /***/function (module, exports, __webpack_require__) {\n\n      \"use strict\";\n\n      Object.defineProperty(exports, \"__esModule\", {\n        value: true\n      });\n\n      var _min = __webpack_require__(7);\n\n      var _min2 = _interopRequireDefault(_min);\n\n      var _max = __webpack_require__(9);\n\n      var _max2 = _interopRequireDefault(_max);\n\n      function _interopRequireDefault(obj) {\n        return obj && obj.__esModule ? obj : { default: obj };\n      }\n\n      exports.default = function (_ref) {\n        var data = _ref.data,\n            limit = _ref.limit,\n            _ref$width = _ref.width,\n            width = _ref$width === undefined ? 1 : _ref$width,\n            _ref$height = _ref.height,\n            height = _ref$height === undefined ? 1 : _ref$height,\n            _ref$margin = _ref.margin,\n            margin = _ref$margin === undefined ? 0 : _ref$margin,\n            _ref$max = _ref.max,\n            max = _ref$max === undefined ? (0, _max2.default)(data) : _ref$max,\n            _ref$min = _ref.min,\n            min = _ref$min === undefined ? (0, _min2.default)(data) : _ref$min;\n\n        var len = data.length;\n\n        if (limit && limit < len) {\n          data = data.slice(len - limit);\n        }\n\n        var vfactor = (height - margin * 2) / (max - min || 2);\n        var hfactor = (width - margin * 2) / ((limit || len) - (len > 1 ? 1 : 0));\n\n        return data.map(function (d, i) {\n          return {\n            x: i * hfactor + margin,\n            y: (max === min ? 1 : max - d) * vfactor + margin\n          };\n        });\n      };\n\n      /***/\n    }]\n    /******/)\n  );\n});\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// features/compose.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Status from '../components/status';\nimport { makeGetStatus } from '../selectors';\nimport {\n  replyCompose,\n  mentionCompose,\n  directCompose,\n} from '../actions/compose';\nimport {\n  reblog,\n  favourite,\n  unreblog,\n  unfavourite,\n  pin,\n  unpin,\n} from '../actions/interactions';\nimport { blockAccount } from '../actions/accounts';\nimport {\n  muteStatus,\n  unmuteStatus,\n  deleteStatus,\n  hideStatus,\n  revealStatus,\n} from '../actions/statuses';\nimport { initMuteModal } from '../actions/mutes';\nimport { initReport } from '../actions/reports';\nimport { openModal } from '../actions/modal';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { boostModal, deleteModal } from '../initial_state';\nimport { showAlertForError } from '../actions/alerts';\n\nconst messages = defineMessages({\n  deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },\n  deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },\n  redraftConfirm: { id: 'confirmations.redraft.confirm', defaultMessage: 'Delete & redraft' },\n  redraftMessage: { id: 'confirmations.redraft.message', defaultMessage: 'Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.' },\n  blockConfirm: { id: 'confirmations.block.confirm', defaultMessage: 'Block' },\n});\n\nconst makeMapStateToProps = () => {\n  const getStatus = makeGetStatus();\n\n  const mapStateToProps = (state, props) => ({\n    status: getStatus(state, props.id),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n  onReply (status, router) {\n    dispatch(replyCompose(status, router));\n  },\n\n  onModalReblog (status) {\n    dispatch(reblog(status));\n  },\n\n  onReblog (status, e) {\n    if (status.get('reblogged')) {\n      dispatch(unreblog(status));\n    } else {\n      if (e.shiftKey || !boostModal) {\n        this.onModalReblog(status);\n      } else {\n        dispatch(openModal('BOOST', { status, onReblog: this.onModalReblog }));\n      }\n    }\n  },\n\n  onFavourite (status) {\n    if (status.get('favourited')) {\n      dispatch(unfavourite(status));\n    } else {\n      dispatch(favourite(status));\n    }\n  },\n\n  onPin (status) {\n    if (status.get('pinned')) {\n      dispatch(unpin(status));\n    } else {\n      dispatch(pin(status));\n    }\n  },\n\n  onEmbed (status) {\n    dispatch(openModal('EMBED', {\n      url: status.get('url'),\n      onError: error => dispatch(showAlertForError(error)),\n    }));\n  },\n\n  onDelete (status, withRedraft = false) {\n    if (!deleteModal) {\n      dispatch(deleteStatus(status.get('id'), withRedraft));\n    } else {\n      dispatch(openModal('CONFIRM', {\n        message: intl.formatMessage(withRedraft ? messages.redraftMessage : messages.deleteMessage),\n        confirm: intl.formatMessage(withRedraft ? messages.redraftConfirm : messages.deleteConfirm),\n        onConfirm: () => dispatch(deleteStatus(status.get('id'), withRedraft)),\n      }));\n    }\n  },\n\n  onDirect (account, router) {\n    dispatch(directCompose(account, router));\n  },\n\n  onMention (account, router) {\n    dispatch(mentionCompose(account, router));\n  },\n\n  onOpenMedia (media, index) {\n    dispatch(openModal('MEDIA', { media, index }));\n  },\n\n  onOpenVideo (media, time) {\n    dispatch(openModal('VIDEO', { media, time }));\n  },\n\n  onBlock (account) {\n    dispatch(openModal('CONFIRM', {\n      message: <FormattedMessage id='confirmations.block.message' defaultMessage='Are you sure you want to block {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\n      confirm: intl.formatMessage(messages.blockConfirm),\n      onConfirm: () => dispatch(blockAccount(account.get('id'))),\n    }));\n  },\n\n  onReport (status) {\n    dispatch(initReport(status.get('account'), status));\n  },\n\n  onMute (account) {\n    dispatch(initMuteModal(account));\n  },\n\n  onMuteConversation (status) {\n    if (status.get('muted')) {\n      dispatch(unmuteStatus(status.get('id')));\n    } else {\n      dispatch(muteStatus(status.get('id')));\n    }\n  },\n\n  onToggleHidden (status) {\n    if (status.get('hidden')) {\n      dispatch(revealStatus(status.get('id')));\n    } else {\n      dispatch(hideStatus(status.get('id')));\n    }\n  },\n\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/status_container.js","import React from 'react';\nimport CharacterCounter from './character_counter';\nimport Button from '../../../components/button';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport ReplyIndicatorContainer from '../containers/reply_indicator_container';\nimport AutosuggestTextarea from '../../../components/autosuggest_textarea';\nimport UploadButtonContainer from '../containers/upload_button_container';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport SpoilerButtonContainer from '../containers/spoiler_button_container';\nimport PrivacyDropdownContainer from '../containers/privacy_dropdown_container';\nimport SensitiveButtonContainer from '../containers/sensitive_button_container';\nimport EmojiPickerDropdown from '../containers/emoji_picker_dropdown_container';\nimport UploadFormContainer from '../containers/upload_form_container';\nimport WarningContainer from '../containers/warning_container';\nimport { isMobile } from '../../../is_mobile';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { length } from 'stringz';\nimport { maxChars } from '../../../initial_state';\n\nconst allowedAroundShortCode = '><\\u0085\\u0020\\u00a0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029\\u0009\\u000a\\u000b\\u000c\\u000d';\n\nconst messages = defineMessages({\n  placeholder: { id: 'compose_form.placeholder', defaultMessage: 'What is on your mind?' },\n  spoiler_placeholder: { id: 'compose_form.spoiler_placeholder', defaultMessage: 'Write your warning here' },\n  publish: { id: 'compose_form.publish', defaultMessage: 'Toot' },\n  publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },\n});\n\n@injectIntl\nexport default class ComposeForm extends ImmutablePureComponent {\n\n  static propTypes = {\n    intl: PropTypes.object.isRequired,\n    text: PropTypes.string.isRequired,\n    suggestion_token: PropTypes.string,\n    suggestions: ImmutablePropTypes.list,\n    spoiler: PropTypes.bool,\n    privacy: PropTypes.string,\n    spoiler_text: PropTypes.string,\n    focusDate: PropTypes.instanceOf(Date),\n    caretPosition: PropTypes.number,\n    preselectDate: PropTypes.instanceOf(Date),\n    is_submitting: PropTypes.bool,\n    is_uploading: PropTypes.bool,\n    onChange: PropTypes.func.isRequired,\n    onSubmit: PropTypes.func.isRequired,\n    onClearSuggestions: PropTypes.func.isRequired,\n    onFetchSuggestions: PropTypes.func.isRequired,\n    onSuggestionSelected: PropTypes.func.isRequired,\n    onChangeSpoilerText: PropTypes.func.isRequired,\n    onPaste: PropTypes.func.isRequired,\n    onPickEmoji: PropTypes.func.isRequired,\n    showSearch: PropTypes.bool,\n    anyMedia: PropTypes.bool,\n  };\n\n  static defaultProps = {\n    showSearch: false,\n  };\n\n  handleChange = (e) => {\n    this.props.onChange(e.target.value);\n  }\n\n  handleKeyDown = (e) => {\n    if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n      this.handleSubmit();\n    }\n  }\n\n  handleSubmit = () => {\n    if (this.props.text !== this.autosuggestTextarea.textarea.value) {\n      // Something changed the text inside the textarea (e.g. browser extensions like Grammarly)\n      // Update the state to match the current text\n      this.props.onChange(this.autosuggestTextarea.textarea.value);\n    }\n\n    // Submit disabled:\n    const { is_submitting, is_uploading, anyMedia } = this.props;\n    const fulltext = [this.props.spoiler_text, this.props.text].join('');\n\n    if (is_submitting || is_uploading || length(fulltext) > maxChars || (fulltext.length !== 0 && fulltext.trim().length === 0 && !anyMedia)) {\n      return;\n    }\n\n    this.props.onSubmit();\n  }\n\n  onSuggestionsClearRequested = () => {\n    this.props.onClearSuggestions();\n  }\n\n  onSuggestionsFetchRequested = (token) => {\n    this.props.onFetchSuggestions(token);\n  }\n\n  onSuggestionSelected = (tokenStart, token, value) => {\n    this.props.onSuggestionSelected(tokenStart, token, value);\n  }\n\n  handleChangeSpoilerText = (e) => {\n    this.props.onChangeSpoilerText(e.target.value);\n  }\n\n  componentDidUpdate (prevProps) {\n    // This statement does several things:\n    // - If we're beginning a reply, and,\n    //     - Replying to zero or one users, places the cursor at the end of the textbox.\n    //     - Replying to more than one user, selects any usernames past the first;\n    //       this provides a convenient shortcut to drop everyone else from the conversation.\n    if (this.props.focusDate !== prevProps.focusDate) {\n      let selectionEnd, selectionStart;\n\n      if (this.props.preselectDate !== prevProps.preselectDate) {\n        selectionEnd   = this.props.text.length;\n        selectionStart = this.props.text.search(/\\s/) + 1;\n      } else if (typeof this.props.caretPosition === 'number') {\n        selectionStart = this.props.caretPosition;\n        selectionEnd   = this.props.caretPosition;\n      } else {\n        selectionEnd   = this.props.text.length;\n        selectionStart = selectionEnd;\n      }\n\n      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);\n      this.autosuggestTextarea.textarea.focus();\n    } else if(prevProps.is_submitting && !this.props.is_submitting) {\n      this.autosuggestTextarea.textarea.focus();\n    } else if (this.props.spoiler !== prevProps.spoiler) {\n      if (this.props.spoiler) {\n        this.spoilerText.focus();\n      } else {\n        this.autosuggestTextarea.textarea.focus();\n      }\n    }\n  }\n\n  setAutosuggestTextarea = (c) => {\n    this.autosuggestTextarea = c;\n  }\n\n  setSpoilerText = (c) => {\n    this.spoilerText = c;\n  }\n\n  handleEmojiPick = (data) => {\n    const { text }     = this.props;\n    const position     = this.autosuggestTextarea.textarea.selectionStart;\n    const needsSpace   = data.custom && position > 0 && !allowedAroundShortCode.includes(text[position - 1]);\n\n    this.props.onPickEmoji(position, data, needsSpace);\n  }\n\n  render () {\n    const { intl, onPaste, showSearch, anyMedia } = this.props;\n    const disabled = this.props.is_submitting;\n    const text     = [this.props.spoiler_text, this.props.text].join('');\n    const disabledButton = disabled || this.props.is_uploading || length(text) > maxChars || (text.length !== 0 && text.trim().length === 0 && !anyMedia);\n    let publishText = '';\n\n    if (this.props.privacy === 'private' || this.props.privacy === 'direct') {\n      publishText = <span className='compose-form__publish-private'><i className='fa fa-lock' /> {intl.formatMessage(messages.publish)}</span>;\n    } else {\n      publishText = this.props.privacy !== 'unlisted' ? intl.formatMessage(messages.publishLoud, { publish: intl.formatMessage(messages.publish) }) : intl.formatMessage(messages.publish);\n    }\n\n    return (\n      <div className='compose-form'>\n        <WarningContainer />\n\n        <ReplyIndicatorContainer />\n\n        <div className={`spoiler-input ${this.props.spoiler ? 'spoiler-input--visible' : ''}`}>\n          <label>\n            <span style={{ display: 'none' }}>{intl.formatMessage(messages.spoiler_placeholder)}</span>\n            <input placeholder={intl.formatMessage(messages.spoiler_placeholder)} value={this.props.spoiler_text} onChange={this.handleChangeSpoilerText} onKeyDown={this.handleKeyDown} type='text' className='spoiler-input__input'  id='cw-spoiler-input' ref={this.setSpoilerText} />\n          </label>\n        </div>\n\n        <div className='compose-form__autosuggest-wrapper'>\n          <AutosuggestTextarea\n            ref={this.setAutosuggestTextarea}\n            placeholder={intl.formatMessage(messages.placeholder)}\n            disabled={disabled}\n            value={this.props.text}\n            onChange={this.handleChange}\n            suggestions={this.props.suggestions}\n            onKeyDown={this.handleKeyDown}\n            onSuggestionsFetchRequested={this.onSuggestionsFetchRequested}\n            onSuggestionsClearRequested={this.onSuggestionsClearRequested}\n            onSuggestionSelected={this.onSuggestionSelected}\n            onPaste={onPaste}\n            autoFocus={!showSearch && !isMobile(window.innerWidth)}\n          />\n\n          <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} />\n        </div>\n\n        <div className='compose-form__modifiers'>\n          <UploadFormContainer />\n        </div>\n\n        <div className='compose-form__buttons-wrapper'>\n          <div className='compose-form__buttons'>\n            <UploadButtonContainer />\n            <PrivacyDropdownContainer />\n            <SensitiveButtonContainer />\n            <SpoilerButtonContainer />\n          </div>\n          <div className='character-counter__wrapper'><CharacterCounter max={maxChars} text={text} /></div>\n        </div>\n\n        <div className='compose-form__publish'>\n          <div className='compose-form__publish-button-wrapper'><Button text={publishText} onClick={this.handleSubmit} disabled={disabledButton} block /></div>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/compose_form.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { length } from 'stringz';\n\nexport default class CharacterCounter extends React.PureComponent {\n\n  static propTypes = {\n    text: PropTypes.string.isRequired,\n    max: PropTypes.number.isRequired,\n  };\n\n  checkRemainingText (diff) {\n    if (diff < 0) {\n      return <span className='character-counter character-counter--over'>{diff}</span>;\n    }\n\n    return <span className='character-counter'>{diff}</span>;\n  }\n\n  render () {\n    const diff = this.props.max - length(this.props.text);\n    return this.checkRemainingText(diff);\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/character_counter.js","import { connect } from 'react-redux';\nimport { cancelReplyCompose } from '../../../actions/compose';\nimport { makeGetStatus } from '../../../selectors';\nimport ReplyIndicator from '../components/reply_indicator';\n\nconst makeMapStateToProps = () => {\n  const getStatus = makeGetStatus();\n\n  const mapStateToProps = state => ({\n    status: getStatus(state, state.getIn(['compose', 'in_reply_to'])),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n\n  onCancel () {\n    dispatch(cancelReplyCompose());\n  },\n\n});\n\nexport default connect(makeMapStateToProps, mapDispatchToProps)(ReplyIndicator);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/reply_indicator_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport DisplayName from '../../../components/display_name';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { isRtl } from '../../../rtl';\n\nconst messages = defineMessages({\n  cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },\n});\n\n@injectIntl\nexport default class ReplyIndicator extends ImmutablePureComponent {\n\n  static contextTypes = {\n    router: PropTypes.object,\n  };\n\n  static propTypes = {\n    status: ImmutablePropTypes.map,\n    onCancel: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  handleClick = () => {\n    this.props.onCancel();\n  }\n\n  handleAccountClick = (e) => {\n    if (e.button === 0) {\n      e.preventDefault();\n      this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`);\n    }\n  }\n\n  render () {\n    const { status, intl } = this.props;\n\n    if (!status) {\n      return null;\n    }\n\n    const content = { __html: status.get('contentHtml') };\n    const style   = {\n      direction: isRtl(status.get('search_index')) ? 'rtl' : 'ltr',\n    };\n\n    return (\n      <div className='reply-indicator'>\n        <div className='reply-indicator__header'>\n          <div className='reply-indicator__cancel'><IconButton title={intl.formatMessage(messages.cancel)} icon='times' onClick={this.handleClick} inverted /></div>\n\n          <a href={status.getIn(['account', 'url'])} onClick={this.handleAccountClick} className='reply-indicator__display-name'>\n            <div className='reply-indicator__display-avatar'><Avatar account={status.get('account')} size={24} /></div>\n            <DisplayName account={status.get('account')} />\n          </a>\n        </div>\n\n        <div className='reply-indicator__content' style={style} dangerouslySetInnerHTML={content} />\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/reply_indicator.js","import React from 'react';\nimport AutosuggestAccountContainer from '../features/compose/containers/autosuggest_account_container';\nimport AutosuggestEmoji from './autosuggest_emoji';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { isRtl } from '../rtl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Textarea from 'react-textarea-autosize';\nimport classNames from 'classnames';\n\nconst textAtCursorMatchesToken = (str, caretPosition) => {\n  let word;\n\n  let left  = str.slice(0, caretPosition).search(/\\S+$/);\n  let right = str.slice(caretPosition).search(/\\s/);\n\n  if (right < 0) {\n    word = str.slice(left);\n  } else {\n    word = str.slice(left, right + caretPosition);\n  }\n\n  if (!word || word.trim().length < 3 || ['@', ':', '#'].indexOf(word[0]) === -1) {\n    return [null, null];\n  }\n\n  word = word.trim().toLowerCase();\n\n  if (word.length > 0) {\n    return [left + 1, word];\n  } else {\n    return [null, null];\n  }\n};\n\nexport default class AutosuggestTextarea extends ImmutablePureComponent {\n\n  static propTypes = {\n    value: PropTypes.string,\n    suggestions: ImmutablePropTypes.list,\n    disabled: PropTypes.bool,\n    placeholder: PropTypes.string,\n    onSuggestionSelected: PropTypes.func.isRequired,\n    onSuggestionsClearRequested: PropTypes.func.isRequired,\n    onSuggestionsFetchRequested: PropTypes.func.isRequired,\n    onChange: PropTypes.func.isRequired,\n    onKeyUp: PropTypes.func,\n    onKeyDown: PropTypes.func,\n    onPaste: PropTypes.func.isRequired,\n    autoFocus: PropTypes.bool,\n  };\n\n  static defaultProps = {\n    autoFocus: true,\n  };\n\n  state = {\n    suggestionsHidden: false,\n    selectedSuggestion: 0,\n    lastToken: null,\n    tokenStart: 0,\n  };\n\n  onChange = (e) => {\n    const [ tokenStart, token ] = textAtCursorMatchesToken(e.target.value, e.target.selectionStart);\n\n    if (token !== null && this.state.lastToken !== token) {\n      this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });\n      this.props.onSuggestionsFetchRequested(token);\n    } else if (token === null) {\n      this.setState({ lastToken: null });\n      this.props.onSuggestionsClearRequested();\n    }\n\n    this.props.onChange(e);\n  }\n\n  onKeyDown = (e) => {\n    const { suggestions, disabled } = this.props;\n    const { selectedSuggestion, suggestionsHidden } = this.state;\n\n    if (disabled) {\n      e.preventDefault();\n      return;\n    }\n\n    if (e.which === 229 || e.isComposing) {\n      // Ignore key events during text composition\n      // e.key may be a name of the physical key even in this case (e.x. Safari / Chrome on Mac)\n      return;\n    }\n\n    switch(e.key) {\n    case 'Escape':\n      if (suggestions.size === 0 || suggestionsHidden) {\n        document.querySelector('.ui').parentElement.focus();\n      } else {\n        e.preventDefault();\n        this.setState({ suggestionsHidden: true });\n      }\n\n      break;\n    case 'ArrowDown':\n      if (suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        this.setState({ selectedSuggestion: Math.min(selectedSuggestion + 1, suggestions.size - 1) });\n      }\n\n      break;\n    case 'ArrowUp':\n      if (suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        this.setState({ selectedSuggestion: Math.max(selectedSuggestion - 1, 0) });\n      }\n\n      break;\n    case 'Enter':\n    case 'Tab':\n      // Select suggestion\n      if (this.state.lastToken !== null && suggestions.size > 0 && !suggestionsHidden) {\n        e.preventDefault();\n        e.stopPropagation();\n        this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestions.get(selectedSuggestion));\n      }\n\n      break;\n    }\n\n    if (e.defaultPrevented || !this.props.onKeyDown) {\n      return;\n    }\n\n    this.props.onKeyDown(e);\n  }\n\n  onBlur = () => {\n    this.setState({ suggestionsHidden: true });\n  }\n\n  onSuggestionClick = (e) => {\n    const suggestion = this.props.suggestions.get(e.currentTarget.getAttribute('data-index'));\n    e.preventDefault();\n    this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);\n    this.textarea.focus();\n  }\n\n  componentWillReceiveProps (nextProps) {\n    if (nextProps.suggestions !== this.props.suggestions && nextProps.suggestions.size > 0 && this.state.suggestionsHidden) {\n      this.setState({ suggestionsHidden: false });\n    }\n  }\n\n  setTextarea = (c) => {\n    this.textarea = c;\n  }\n\n  onPaste = (e) => {\n    if (e.clipboardData && e.clipboardData.files.length === 1) {\n      this.props.onPaste(e.clipboardData.files);\n      e.preventDefault();\n    }\n  }\n\n  renderSuggestion = (suggestion, i) => {\n    const { selectedSuggestion } = this.state;\n    let inner, key;\n\n    if (typeof suggestion === 'object') {\n      inner = <AutosuggestEmoji emoji={suggestion} />;\n      key   = suggestion.id;\n    } else if (suggestion[0] === '#') {\n      inner = suggestion;\n      key   = suggestion;\n    } else {\n      inner = <AutosuggestAccountContainer id={suggestion} />;\n      key   = suggestion;\n    }\n\n    return (\n      <div role='button' tabIndex='0' key={key} data-index={i} className={classNames('autosuggest-textarea__suggestions__item', { selected: i === selectedSuggestion })} onMouseDown={this.onSuggestionClick}>\n        {inner}\n      </div>\n    );\n  }\n\n  render () {\n    const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus } = this.props;\n    const { suggestionsHidden } = this.state;\n    const style = { direction: 'ltr' };\n\n    if (isRtl(value)) {\n      style.direction = 'rtl';\n    }\n\n    return (\n      <div className='autosuggest-textarea'>\n        <label>\n          <span style={{ display: 'none' }}>{placeholder}</span>\n\n          <Textarea\n            inputRef={this.setTextarea}\n            className='autosuggest-textarea__textarea'\n            disabled={disabled}\n            placeholder={placeholder}\n            autoFocus={autoFocus}\n            value={value}\n            onChange={this.onChange}\n            onKeyDown={this.onKeyDown}\n            onKeyUp={onKeyUp}\n            onBlur={this.onBlur}\n            onPaste={this.onPaste}\n            style={style}\n            aria-autocomplete='list'\n          />\n        </label>\n\n        <div className={`autosuggest-textarea__suggestions ${suggestionsHidden || suggestions.isEmpty() ? '' : 'autosuggest-textarea__suggestions--visible'}`}>\n          {suggestions.map(this.renderSuggestion)}\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_textarea.js","import { connect } from 'react-redux';\nimport AutosuggestAccount from '../components/autosuggest_account';\nimport { makeGetAccount } from '../../../selectors';\n\nconst makeMapStateToProps = () => {\n  const getAccount = makeGetAccount();\n\n  const mapStateToProps = (state, { id }) => ({\n    account: getAccount(state, id),\n  });\n\n  return mapStateToProps;\n};\n\nexport default connect(makeMapStateToProps)(AutosuggestAccount);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/autosuggest_account_container.js","import React from 'react';\nimport Avatar from '../../../components/avatar';\nimport DisplayName from '../../../components/display_name';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class AutosuggestAccount extends ImmutablePureComponent {\n\n  static propTypes = {\n    account: ImmutablePropTypes.map.isRequired,\n  };\n\n  render () {\n    const { account } = this.props;\n\n    return (\n      <div className='autosuggest-account'>\n        <div className='autosuggest-account-icon'><Avatar account={account} size={18} /></div>\n        <DisplayName account={account} />\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/autosuggest_account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport unicodeMapping from '../features/emoji/emoji_unicode_mapping_light';\n\nconst assetHost = process.env.CDN_HOST || '';\n\nexport default class AutosuggestEmoji extends React.PureComponent {\n\n  static propTypes = {\n    emoji: PropTypes.object.isRequired,\n  };\n\n  render () {\n    const { emoji } = this.props;\n    let url;\n\n    if (emoji.custom) {\n      url = emoji.imageUrl;\n    } else {\n      const mapping = unicodeMapping[emoji.native] || unicodeMapping[emoji.native.replace(/\\uFE0F$/, '')];\n\n      if (!mapping) {\n        return null;\n      }\n\n      url = `${assetHost}/emoji/${mapping.filename}.svg`;\n    }\n\n    return (\n      <div className='autosuggest-emoji'>\n        <img\n          className='emojione'\n          src={url}\n          alt={emoji.native || emoji.colons}\n        />\n\n        {emoji.colons}\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/autosuggest_emoji.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n  subClass.prototype = Object.create(superClass.prototype);\n  subClass.prototype.constructor = subClass;\n  subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n\n  return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nvar isIE = isBrowser ? !!document.documentElement.currentStyle : false;\nvar hiddenTextarea = isBrowser && document.createElement('textarea');\nvar HIDDEN_TEXTAREA_STYLE = {\n  'min-height': '0',\n  'max-height': 'none',\n  height: '0',\n  visibility: 'hidden',\n  overflow: 'hidden',\n  position: 'absolute',\n  'z-index': '-1000',\n  top: '0',\n  right: '0'\n};\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'font-family', 'font-weight', 'font-size', 'font-style', 'tab-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width', 'box-sizing'];\nvar computedStyleCache = {};\nfunction calculateNodeHeight(uiTextNode, uid, useCache, minRows, maxRows) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (minRows === void 0) {\n    minRows = null;\n  }\n\n  if (maxRows === void 0) {\n    maxRows = null;\n  }\n\n  if (hiddenTextarea.parentNode === null) {\n    document.body.appendChild(hiddenTextarea);\n  } // Copy all CSS properties that have an impact on the height of the content in\n  // the textbox\n\n\n  var nodeStyling = calculateNodeStyling(uiTextNode, uid, useCache);\n\n  if (nodeStyling === null) {\n    return null;\n  }\n\n  var paddingSize = nodeStyling.paddingSize,\n      borderSize = nodeStyling.borderSize,\n      boxSizing = nodeStyling.boxSizing,\n      sizingStyle = nodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n  // text-lines will not calculated properly as the shadow will technically be\n  // narrower for content\n\n  Object.keys(sizingStyle).forEach(function (key) {\n    hiddenTextarea.style[key] = sizingStyle[key];\n  });\n  Object.keys(HIDDEN_TEXTAREA_STYLE).forEach(function (key) {\n    hiddenTextarea.style.setProperty(key, HIDDEN_TEXTAREA_STYLE[key], 'important');\n  });\n  hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || 'x';\n  var minHeight = -Infinity;\n  var maxHeight = Infinity;\n  var height = hiddenTextarea.scrollHeight;\n\n  if (boxSizing === 'border-box') {\n    // border-box: add border, since height = content + padding + border\n    height = height + borderSize;\n  } else if (boxSizing === 'content-box') {\n    // remove padding, since height = content\n    height = height - paddingSize;\n  } // measure height of a textarea with a single row\n\n\n  hiddenTextarea.value = 'x';\n  var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n  if (minRows !== null || maxRows !== null) {\n    if (minRows !== null) {\n      minHeight = singleRowHeight * minRows;\n\n      if (boxSizing === 'border-box') {\n        minHeight = minHeight + paddingSize + borderSize;\n      }\n\n      height = Math.max(minHeight, height);\n    }\n\n    if (maxRows !== null) {\n      maxHeight = singleRowHeight * maxRows;\n\n      if (boxSizing === 'border-box') {\n        maxHeight = maxHeight + paddingSize + borderSize;\n      }\n\n      height = Math.min(maxHeight, height);\n    }\n  }\n\n  var rowCount = Math.floor(height / singleRowHeight);\n  return {\n    height: height,\n    minHeight: minHeight,\n    maxHeight: maxHeight,\n    rowCount: rowCount\n  };\n}\n\nfunction calculateNodeStyling(node, uid, useCache) {\n  if (useCache === void 0) {\n    useCache = false;\n  }\n\n  if (useCache && computedStyleCache[uid]) {\n    return computedStyleCache[uid];\n  }\n\n  var style = window.getComputedStyle(node);\n\n  if (style === null) {\n    return null;\n  }\n\n  var sizingStyle = SIZING_STYLE.reduce(function (obj, name) {\n    obj[name] = style.getPropertyValue(name);\n    return obj;\n  }, {});\n  var boxSizing = sizingStyle['box-sizing']; // IE (Edge has already correct behaviour) returns content width as computed width\n  // so we need to add manually padding and border widths\n\n  if (isIE && boxSizing === 'border-box') {\n    sizingStyle.width = parseFloat(sizingStyle.width) + parseFloat(style['border-right-width']) + parseFloat(style['border-left-width']) + parseFloat(style['padding-right']) + parseFloat(style['padding-left']) + 'px';\n  }\n\n  var paddingSize = parseFloat(sizingStyle['padding-bottom']) + parseFloat(sizingStyle['padding-top']);\n  var borderSize = parseFloat(sizingStyle['border-bottom-width']) + parseFloat(sizingStyle['border-top-width']);\n  var nodeInfo = {\n    sizingStyle: sizingStyle,\n    paddingSize: paddingSize,\n    borderSize: borderSize,\n    boxSizing: boxSizing\n  };\n\n  if (useCache) {\n    computedStyleCache[uid] = nodeInfo;\n  }\n\n  return nodeInfo;\n}\n\nvar purgeCache = function purgeCache(uid) {\n  return delete computedStyleCache[uid];\n};\n\nfunction autoInc(seed) {\n  if (seed === void 0) {\n    seed = 0;\n  }\n\n  return function () {\n    return ++seed;\n  };\n}\n\nvar uid = autoInc();\n\n/**\n * <TextareaAutosize />\n */\nvar noop = function noop() {}; // IE11 has a problem with eval source maps, can be reproduced with:\n// eval('\"use strict\"; var onNextFrame = window.cancelAnimationFrame; onNextFrame(4);')\n// so we bind window as context in dev modes\n\n\nvar _ref = isBrowser && window.requestAnimationFrame ? process.env.NODE_ENV !== 'development' ? [window.requestAnimationFrame, window.cancelAnimationFrame] : [window.requestAnimationFrame.bind(window), window.cancelAnimationFrame.bind(window)] : [setTimeout, clearTimeout];\nvar onNextFrame = _ref[0];\nvar clearNextFrameAction = _ref[1];\n\nvar TextareaAutosize =\n/*#__PURE__*/\nfunction (_React$Component) {\n  _inheritsLoose(TextareaAutosize, _React$Component);\n\n  function TextareaAutosize(props) {\n    var _this;\n\n    _this = _React$Component.call(this, props) || this;\n    _this._resizeLock = false;\n\n    _this._onRootDOMNode = function (node) {\n      _this._rootDOMNode = node;\n\n      if (_this.props.inputRef) {\n        _this.props.inputRef(node);\n      }\n    };\n\n    _this._onChange = function (event) {\n      if (!_this._controlled) {\n        _this._resizeComponent();\n      }\n\n      _this.props.onChange(event);\n    };\n\n    _this._resizeComponent = function (callback) {\n      if (callback === void 0) {\n        callback = noop;\n      }\n\n      if (typeof _this._rootDOMNode === 'undefined') {\n        callback();\n        return;\n      }\n\n      var nodeHeight = calculateNodeHeight(_this._rootDOMNode, _this._uid, _this.props.useCacheForDOMMeasurements, _this.props.minRows, _this.props.maxRows);\n\n      if (nodeHeight === null) {\n        callback();\n        return;\n      }\n\n      var height = nodeHeight.height,\n          minHeight = nodeHeight.minHeight,\n          maxHeight = nodeHeight.maxHeight,\n          rowCount = nodeHeight.rowCount;\n      _this.rowCount = rowCount;\n\n      if (_this.state.height !== height || _this.state.minHeight !== minHeight || _this.state.maxHeight !== maxHeight) {\n        _this.setState({\n          height: height,\n          minHeight: minHeight,\n          maxHeight: maxHeight\n        }, callback);\n\n        return;\n      }\n\n      callback();\n    };\n\n    _this.state = {\n      height: props.style && props.style.height || 0,\n      minHeight: -Infinity,\n      maxHeight: Infinity\n    };\n    _this._uid = uid();\n    _this._controlled = typeof props.value === 'string';\n    return _this;\n  }\n\n  var _proto = TextareaAutosize.prototype;\n\n  _proto.render = function render() {\n    var _props = this.props,\n        _minRows = _props.minRows,\n        _maxRows = _props.maxRows,\n        _onHeightChange = _props.onHeightChange,\n        _useCacheForDOMMeasurements = _props.useCacheForDOMMeasurements,\n        _inputRef = _props.inputRef,\n        props = _objectWithoutProperties(_props, [\"minRows\", \"maxRows\", \"onHeightChange\", \"useCacheForDOMMeasurements\", \"inputRef\"]);\n    props.style = _extends({}, props.style, {\n      height: this.state.height\n    });\n    var maxHeight = Math.max(props.style.maxHeight || Infinity, this.state.maxHeight);\n\n    if (maxHeight < this.state.height) {\n      props.style.overflow = 'hidden';\n    }\n\n    return React.createElement(\"textarea\", _extends({}, props, {\n      onChange: this._onChange,\n      ref: this._onRootDOMNode\n    }));\n  };\n\n  _proto.componentDidMount = function componentDidMount() {\n    var _this2 = this;\n\n    this._resizeComponent(); // Working around Firefox bug which runs resize listeners even when other JS is running at the same moment\n    // causing competing rerenders (due to setState in the listener) in React.\n    // More can be found here - facebook/react#6324\n\n\n    this._resizeListener = function () {\n      if (_this2._resizeLock) {\n        return;\n      }\n\n      _this2._resizeLock = true;\n\n      _this2._resizeComponent(function () {\n        return _this2._resizeLock = false;\n      });\n    };\n\n    window.addEventListener('resize', this._resizeListener);\n  };\n\n  _proto.componentWillReceiveProps = function componentWillReceiveProps() {\n    var _this3 = this;\n\n    this._clearNextFrame();\n\n    this._onNextFrameActionId = onNextFrame(function () {\n      return _this3._resizeComponent();\n    });\n  };\n\n  _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n    if (this.state.height !== prevState.height) {\n      this.props.onHeightChange(this.state.height, this);\n    }\n  };\n\n  _proto.componentWillUnmount = function componentWillUnmount() {\n    this._clearNextFrame();\n\n    window.removeEventListener('resize', this._resizeListener);\n    purgeCache(this._uid);\n  };\n\n  _proto._clearNextFrame = function _clearNextFrame() {\n    clearNextFrameAction(this._onNextFrameActionId);\n  };\n\n  return TextareaAutosize;\n}(React.Component);\n\nTextareaAutosize.propTypes = {\n  value: PropTypes.string,\n  onChange: PropTypes.func,\n  onHeightChange: PropTypes.func,\n  useCacheForDOMMeasurements: PropTypes.bool,\n  minRows: PropTypes.number,\n  maxRows: PropTypes.number,\n  inputRef: PropTypes.func\n};\nTextareaAutosize.defaultProps = {\n  onChange: noop,\n  onHeightChange: noop,\n  useCacheForDOMMeasurements: false\n};\n\nexport default TextareaAutosize;\n\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-textarea-autosize/es/index.js","import { connect } from 'react-redux';\nimport UploadButton from '../components/upload_button';\nimport { uploadCompose } from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n  disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(m => m.get('type') === 'video')),\n  resetFileKey: state.getIn(['compose', 'resetFileKey']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onSelectFile (files) {\n    dispatch(uploadCompose(files));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(UploadButton);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_button_container.js","import React from 'react';\nimport IconButton from '../../../components/icon_button';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { connect } from 'react-redux';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nconst messages = defineMessages({\n  upload: { id: 'upload_button.label', defaultMessage: 'Add media' },\n});\n\nconst makeMapStateToProps = () => {\n  const mapStateToProps = state => ({\n    acceptContentTypes: state.getIn(['media_attachments', 'accept_content_types']),\n  });\n\n  return mapStateToProps;\n};\n\nconst iconStyle = {\n  height: null,\n  lineHeight: '27px',\n};\n\n@connect(makeMapStateToProps)\n@injectIntl\nexport default class UploadButton extends ImmutablePureComponent {\n\n  static propTypes = {\n    disabled: PropTypes.bool,\n    onSelectFile: PropTypes.func.isRequired,\n    style: PropTypes.object,\n    resetFileKey: PropTypes.number,\n    acceptContentTypes: ImmutablePropTypes.listOf(PropTypes.string).isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  handleChange = (e) => {\n    if (e.target.files.length > 0) {\n      this.props.onSelectFile(e.target.files);\n    }\n  }\n\n  handleClick = () => {\n    this.fileElement.click();\n  }\n\n  setRef = (c) => {\n    this.fileElement = c;\n  }\n\n  render () {\n\n    const { intl, resetFileKey, disabled, acceptContentTypes } = this.props;\n\n    return (\n      <div className='compose-form__upload-button'>\n        <IconButton icon='camera' title={intl.formatMessage(messages.upload)} disabled={disabled} onClick={this.handleClick} className='compose-form__upload-button-icon' size={18} inverted style={iconStyle} />\n        <label>\n          <span style={{ display: 'none' }}>{intl.formatMessage(messages.upload)}</span>\n          <input\n            key={resetFileKey}\n            ref={this.setRef}\n            type='file'\n            multiple={false}\n            accept={acceptContentTypes.toArray().join(',')}\n            onChange={this.handleChange}\n            disabled={disabled}\n            style={{ display: 'none' }}\n          />\n        </label>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_button.js","import { connect } from 'react-redux';\nimport TextIconButton from '../components/text_icon_button';\nimport { changeComposeSpoilerness } from '../../../actions/compose';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n  marked: { id: 'compose_form.spoiler.marked', defaultMessage: 'Text is hidden behind warning' },\n  unmarked: { id: 'compose_form.spoiler.unmarked', defaultMessage: 'Text is not hidden' },\n});\n\nconst mapStateToProps = (state, { intl }) => ({\n  label: 'CW',\n  title: intl.formatMessage(state.getIn(['compose', 'spoiler']) ? messages.marked : messages.unmarked),\n  active: state.getIn(['compose', 'spoiler']),\n  ariaControls: 'cw-spoiler-input',\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onClick () {\n    dispatch(changeComposeSpoilerness());\n  },\n\n});\n\nexport default injectIntl(connect(mapStateToProps, mapDispatchToProps)(TextIconButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/spoiler_button_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport default class TextIconButton extends React.PureComponent {\n\n  static propTypes = {\n    label: PropTypes.string.isRequired,\n    title: PropTypes.string,\n    active: PropTypes.bool,\n    onClick: PropTypes.func.isRequired,\n    ariaControls: PropTypes.string,\n  };\n\n  handleClick = (e) => {\n    e.preventDefault();\n    this.props.onClick();\n  }\n\n  render () {\n    const { label, title, active, ariaControls } = this.props;\n\n    return (\n      <button title={title} aria-label={title} className={`text-icon-button ${active ? 'active' : ''}`} aria-expanded={active} onClick={this.handleClick} aria-controls={ariaControls}>\n        {label}\n      </button>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/text_icon_button.js","import { connect } from 'react-redux';\nimport PrivacyDropdown from '../components/privacy_dropdown';\nimport { changeComposeVisibility } from '../../../actions/compose';\nimport { openModal, closeModal } from '../../../actions/modal';\nimport { isUserTouching } from '../../../is_mobile';\n\nconst mapStateToProps = state => ({\n  isModalOpen: state.get('modal').modalType === 'ACTIONS',\n  value: state.getIn(['compose', 'privacy']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onChange (value) {\n    dispatch(changeComposeVisibility(value));\n  },\n\n  isUserTouching,\n  onModalOpen: props => dispatch(openModal('ACTIONS', props)),\n  onModalClose: () => dispatch(closeModal()),\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PrivacyDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/privacy_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport IconButton from '../../../components/icon_button';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport detectPassiveEvents from 'detect-passive-events';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n  public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },\n  public_long: { id: 'privacy.public.long', defaultMessage: 'Post to public timelines' },\n  unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },\n  unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Do not show in public timelines' },\n  private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },\n  private_long: { id: 'privacy.private.long', defaultMessage: 'Post to followers only' },\n  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },\n  direct_long: { id: 'privacy.direct.long', defaultMessage: 'Post to mentioned users only' },\n  change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' },\n});\n\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nclass PrivacyDropdownMenu extends React.PureComponent {\n\n  static propTypes = {\n    style: PropTypes.object,\n    items: PropTypes.array.isRequired,\n    value: PropTypes.string.isRequired,\n    onClose: PropTypes.func.isRequired,\n    onChange: PropTypes.func.isRequired,\n  };\n\n  state = {\n    mounted: false,\n  };\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  handleKeyDown = e => {\n    const { items } = this.props;\n    const value = e.currentTarget.getAttribute('data-index');\n    const index = items.findIndex(item => {\n      return (item.value === value);\n    });\n    let element;\n\n    switch(e.key) {\n    case 'Escape':\n      this.props.onClose();\n      break;\n    case 'Enter':\n      this.handleClick(e);\n      break;\n    case 'ArrowDown':\n      element = this.node.childNodes[index + 1];\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'ArrowUp':\n      element = this.node.childNodes[index - 1];\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'Home':\n      element = this.node.firstChild;\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    case 'End':\n      element = this.node.lastChild;\n      if (element) {\n        element.focus();\n        this.props.onChange(element.getAttribute('data-index'));\n      }\n      break;\n    }\n  }\n\n  handleClick = e => {\n    const value = e.currentTarget.getAttribute('data-index');\n\n    e.preventDefault();\n\n    this.props.onClose();\n    this.props.onChange(value);\n  }\n\n  componentDidMount () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n    if (this.focusedItem) this.focusedItem.focus();\n    this.setState({ mounted: true });\n  }\n\n  componentWillUnmount () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  setFocusRef = c => {\n    this.focusedItem = c;\n  }\n\n  render () {\n    const { mounted } = this.state;\n    const { style, items, value } = this.props;\n\n    return (\n      <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n        {({ opacity, scaleX, scaleY }) => (\n          // It should not be transformed when mounting because the resulting\n          // size will be used to determine the coordinate of the menu by\n          // react-overlays\n          <div className='privacy-dropdown__dropdown' style={{ ...style, opacity: opacity, transform: mounted ? `scale(${scaleX}, ${scaleY})` : null }} role='listbox' ref={this.setRef}>\n            {items.map(item => (\n              <div role='option' tabIndex='0' key={item.value} data-index={item.value} onKeyDown={this.handleKeyDown} onClick={this.handleClick} className={classNames('privacy-dropdown__option', { active: item.value === value })} aria-selected={item.value === value} ref={item.value === value ? this.setFocusRef : null}>\n                <div className='privacy-dropdown__option__icon'>\n                  <i className={`fa fa-fw fa-${item.icon}`} />\n                </div>\n\n                <div className='privacy-dropdown__option__content'>\n                  <strong>{item.text}</strong>\n                  {item.meta}\n                </div>\n              </div>\n            ))}\n          </div>\n        )}\n      </Motion>\n    );\n  }\n\n}\n\n@injectIntl\nexport default class PrivacyDropdown extends React.PureComponent {\n\n  static propTypes = {\n    isUserTouching: PropTypes.func,\n    isModalOpen: PropTypes.bool.isRequired,\n    onModalOpen: PropTypes.func,\n    onModalClose: PropTypes.func,\n    value: PropTypes.string.isRequired,\n    onChange: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  state = {\n    open: false,\n    placement: null,\n  };\n\n  handleToggle = ({ target }) => {\n    if (this.props.isUserTouching()) {\n      if (this.state.open) {\n        this.props.onModalClose();\n      } else {\n        this.props.onModalOpen({\n          actions: this.options.map(option => ({ ...option, active: option.value === this.props.value })),\n          onClick: this.handleModalActionClick,\n        });\n      }\n    } else {\n      const { top } = target.getBoundingClientRect();\n      this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n      this.setState({ open: !this.state.open });\n    }\n  }\n\n  handleModalActionClick = (e) => {\n    e.preventDefault();\n\n    const { value } = this.options[e.currentTarget.getAttribute('data-index')];\n\n    this.props.onModalClose();\n    this.props.onChange(value);\n  }\n\n  handleKeyDown = e => {\n    switch(e.key) {\n    case 'Escape':\n      this.handleClose();\n      break;\n    }\n  }\n\n  handleClose = () => {\n    this.setState({ open: false });\n  }\n\n  handleChange = value => {\n    this.props.onChange(value);\n  }\n\n  componentWillMount () {\n    const { intl: { formatMessage } } = this.props;\n\n    this.options = [\n      { icon: 'globe', value: 'public', text: formatMessage(messages.public_short), meta: formatMessage(messages.public_long) },\n      { icon: 'unlock-alt', value: 'unlisted', text: formatMessage(messages.unlisted_short), meta: formatMessage(messages.unlisted_long) },\n      { icon: 'lock', value: 'private', text: formatMessage(messages.private_short), meta: formatMessage(messages.private_long) },\n      { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },\n    ];\n  }\n\n  render () {\n    const { value, intl } = this.props;\n    const { open, placement } = this.state;\n\n    const valueOption = this.options.find(item => item.value === value);\n\n    return (\n      <div className={classNames('privacy-dropdown', { active: open })} onKeyDown={this.handleKeyDown}>\n        <div className={classNames('privacy-dropdown__value', { active: this.options.indexOf(valueOption) === 0 })}>\n          <IconButton\n            className='privacy-dropdown__value-icon'\n            icon={valueOption.icon}\n            title={intl.formatMessage(messages.change_privacy)}\n            size={18}\n            expanded={open}\n            active={open}\n            inverted\n            onClick={this.handleToggle}\n            style={{ height: null, lineHeight: '27px' }}\n          />\n        </div>\n\n        <Overlay show={open} placement={placement} target={this}>\n          <PrivacyDropdownMenu\n            items={this.options}\n            value={value}\n            onClose={this.handleClose}\n            onChange={this.handleChange}\n          />\n        </Overlay>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/privacy_dropdown.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport IconButton from '../../../components/icon_button';\nimport { changeComposeSensitivity } from '../../../actions/compose';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { injectIntl, defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n  marked: { id: 'compose_form.sensitive.marked', defaultMessage: 'Media is marked as sensitive' },\n  unmarked: { id: 'compose_form.sensitive.unmarked', defaultMessage: 'Media is not marked as sensitive' },\n});\n\nconst mapStateToProps = state => ({\n  visible: state.getIn(['compose', 'media_attachments']).size > 0,\n  active: state.getIn(['compose', 'sensitive']),\n  disabled: state.getIn(['compose', 'spoiler']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onClick () {\n    dispatch(changeComposeSensitivity());\n  },\n\n});\n\nclass SensitiveButton extends React.PureComponent {\n\n  static propTypes = {\n    visible: PropTypes.bool,\n    active: PropTypes.bool,\n    disabled: PropTypes.bool,\n    onClick: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  render () {\n    const { visible, active, disabled, onClick, intl } = this.props;\n\n    return (\n      <Motion defaultStyle={{ scale: 0.87 }} style={{ scale: spring(visible ? 1 : 0.87, { stiffness: 200, damping: 3 }) }}>\n        {({ scale }) => {\n          const icon = active ? 'eye-slash' : 'eye';\n          const className = classNames('compose-form__sensitive-button', {\n            'compose-form__sensitive-button--visible': visible,\n          });\n          return (\n            <div className={className} style={{ transform: `scale(${scale})` }}>\n              <IconButton\n                className='compose-form__sensitive-button__icon'\n                title={intl.formatMessage(active ? messages.marked : messages.unmarked)}\n                icon={icon}\n                onClick={onClick}\n                size={18}\n                active={active}\n                disabled={disabled}\n                style={{ lineHeight: null, height: null }}\n                inverted\n              />\n            </div>\n          );\n        }}\n      </Motion>\n    );\n  }\n\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(injectIntl(SensitiveButton));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/sensitive_button_container.js","import { connect } from 'react-redux';\nimport EmojiPickerDropdown from '../components/emoji_picker_dropdown';\nimport { changeSetting } from '../../../actions/settings';\nimport { createSelector } from 'reselect';\nimport { Map as ImmutableMap } from 'immutable';\nimport { useEmoji } from '../../../actions/emojis';\n\nconst perLine = 8;\nconst lines   = 2;\n\nconst DEFAULTS = [\n  '+1',\n  'grinning',\n  'kissing_heart',\n  'heart_eyes',\n  'laughing',\n  'stuck_out_tongue_winking_eye',\n  'sweat_smile',\n  'joy',\n  'yum',\n  'disappointed',\n  'thinking_face',\n  'weary',\n  'sob',\n  'sunglasses',\n  'heart',\n  'ok_hand',\n];\n\nconst getFrequentlyUsedEmojis = createSelector([\n  state => state.getIn(['settings', 'frequentlyUsedEmojis'], ImmutableMap()),\n], emojiCounters => {\n  let emojis = emojiCounters\n    .keySeq()\n    .sort((a, b) => emojiCounters.get(a) - emojiCounters.get(b))\n    .reverse()\n    .slice(0, perLine * lines)\n    .toArray();\n\n  if (emojis.length < DEFAULTS.length) {\n    let uniqueDefaults = DEFAULTS.filter(emoji => !emojis.includes(emoji));\n    emojis = emojis.concat(uniqueDefaults.slice(0, DEFAULTS.length - emojis.length));\n  }\n\n  return emojis;\n});\n\nconst getCustomEmojis = createSelector([\n  state => state.get('custom_emojis'),\n], emojis => emojis.filter(e => e.get('visible_in_picker')).sort((a, b) => {\n  const aShort = a.get('shortcode').toLowerCase();\n  const bShort = b.get('shortcode').toLowerCase();\n\n  if (aShort < bShort) {\n    return -1;\n  } else if (aShort > bShort ) {\n    return 1;\n  } else {\n    return 0;\n  }\n}));\n\nconst mapStateToProps = state => ({\n  custom_emojis: getCustomEmojis(state),\n  skinTone: state.getIn(['settings', 'skinTone']),\n  frequentlyUsedEmojis: getFrequentlyUsedEmojis(state),\n});\n\nconst mapDispatchToProps = (dispatch, { onPickEmoji }) => ({\n  onSkinTone: skinTone => {\n    dispatch(changeSetting(['skinTone'], skinTone));\n  },\n\n  onPickEmoji: emoji => {\n    dispatch(useEmoji(emoji));\n\n    if (onPickEmoji) {\n      onPickEmoji(emoji);\n    }\n  },\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(EmojiPickerDropdown);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport { EmojiPicker as EmojiPickerAsync } from '../../ui/util/async-components';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport classNames from 'classnames';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport detectPassiveEvents from 'detect-passive-events';\nimport { buildCustomEmojis } from '../../emoji/emoji';\n\nconst messages = defineMessages({\n  emoji: { id: 'emoji_button.label', defaultMessage: 'Insert emoji' },\n  emoji_search: { id: 'emoji_button.search', defaultMessage: 'Search...' },\n  emoji_not_found: { id: 'emoji_button.not_found', defaultMessage: 'No emojos!! (╯°□°)╯︵ ┻━┻' },\n  custom: { id: 'emoji_button.custom', defaultMessage: 'Custom' },\n  recent: { id: 'emoji_button.recent', defaultMessage: 'Frequently used' },\n  search_results: { id: 'emoji_button.search_results', defaultMessage: 'Search results' },\n  people: { id: 'emoji_button.people', defaultMessage: 'People' },\n  nature: { id: 'emoji_button.nature', defaultMessage: 'Nature' },\n  food: { id: 'emoji_button.food', defaultMessage: 'Food & Drink' },\n  activity: { id: 'emoji_button.activity', defaultMessage: 'Activity' },\n  travel: { id: 'emoji_button.travel', defaultMessage: 'Travel & Places' },\n  objects: { id: 'emoji_button.objects', defaultMessage: 'Objects' },\n  symbols: { id: 'emoji_button.symbols', defaultMessage: 'Symbols' },\n  flags: { id: 'emoji_button.flags', defaultMessage: 'Flags' },\n});\n\nconst assetHost = process.env.CDN_HOST || '';\nlet EmojiPicker, Emoji; // load asynchronously\n\nconst backgroundImageFn = () => `${assetHost}/emoji/sheet_10.png`;\nconst listenerOptions = detectPassiveEvents.hasSupport ? { passive: true } : false;\n\nconst categoriesSort = [\n  'recent',\n  'custom',\n  'people',\n  'nature',\n  'foods',\n  'activity',\n  'places',\n  'objects',\n  'symbols',\n  'flags',\n];\n\nclass ModifierPickerMenu extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    onSelect: PropTypes.func.isRequired,\n    onClose: PropTypes.func.isRequired,\n  };\n\n  handleClick = e => {\n    this.props.onSelect(e.currentTarget.getAttribute('data-index') * 1);\n  }\n\n  componentWillReceiveProps (nextProps) {\n    if (nextProps.active) {\n      this.attachListeners();\n    } else {\n      this.removeListeners();\n    }\n  }\n\n  componentWillUnmount () {\n    this.removeListeners();\n  }\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  attachListeners () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  removeListeners () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  render () {\n    const { active } = this.props;\n\n    return (\n      <div className='emoji-picker-dropdown__modifiers__menu' style={{ display: active ? 'block' : 'none' }} ref={this.setRef}>\n        <button onClick={this.handleClick} data-index={1}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={1} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={2}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={2} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={3}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={3} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={4}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={4} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={5}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={5} backgroundImageFn={backgroundImageFn} /></button>\n        <button onClick={this.handleClick} data-index={6}><Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={6} backgroundImageFn={backgroundImageFn} /></button>\n      </div>\n    );\n  }\n\n}\n\nclass ModifierPicker extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    modifier: PropTypes.number,\n    onChange: PropTypes.func,\n    onClose: PropTypes.func,\n    onOpen: PropTypes.func,\n  };\n\n  handleClick = () => {\n    if (this.props.active) {\n      this.props.onClose();\n    } else {\n      this.props.onOpen();\n    }\n  }\n\n  handleSelect = modifier => {\n    this.props.onChange(modifier);\n    this.props.onClose();\n  }\n\n  render () {\n    const { active, modifier } = this.props;\n\n    return (\n      <div className='emoji-picker-dropdown__modifiers'>\n        <Emoji emoji='fist' set='twitter' size={22} sheetSize={32} skin={modifier} onClick={this.handleClick} backgroundImageFn={backgroundImageFn} />\n        <ModifierPickerMenu active={active} onSelect={this.handleSelect} onClose={this.props.onClose} />\n      </div>\n    );\n  }\n\n}\n\n@injectIntl\nclass EmojiPickerMenu extends React.PureComponent {\n\n  static propTypes = {\n    custom_emojis: ImmutablePropTypes.list,\n    frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n    loading: PropTypes.bool,\n    onClose: PropTypes.func.isRequired,\n    onPick: PropTypes.func.isRequired,\n    style: PropTypes.object,\n    placement: PropTypes.string,\n    arrowOffsetLeft: PropTypes.string,\n    arrowOffsetTop: PropTypes.string,\n    intl: PropTypes.object.isRequired,\n    skinTone: PropTypes.number.isRequired,\n    onSkinTone: PropTypes.func.isRequired,\n  };\n\n  static defaultProps = {\n    style: {},\n    loading: true,\n    frequentlyUsedEmojis: [],\n  };\n\n  state = {\n    modifierOpen: false,\n    placement: null,\n  };\n\n  handleDocumentClick = e => {\n    if (this.node && !this.node.contains(e.target)) {\n      this.props.onClose();\n    }\n  }\n\n  componentDidMount () {\n    document.addEventListener('click', this.handleDocumentClick, false);\n    document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  componentWillUnmount () {\n    document.removeEventListener('click', this.handleDocumentClick, false);\n    document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);\n  }\n\n  setRef = c => {\n    this.node = c;\n  }\n\n  getI18n = () => {\n    const { intl } = this.props;\n\n    return {\n      search: intl.formatMessage(messages.emoji_search),\n      notfound: intl.formatMessage(messages.emoji_not_found),\n      categories: {\n        search: intl.formatMessage(messages.search_results),\n        recent: intl.formatMessage(messages.recent),\n        people: intl.formatMessage(messages.people),\n        nature: intl.formatMessage(messages.nature),\n        foods: intl.formatMessage(messages.food),\n        activity: intl.formatMessage(messages.activity),\n        places: intl.formatMessage(messages.travel),\n        objects: intl.formatMessage(messages.objects),\n        symbols: intl.formatMessage(messages.symbols),\n        flags: intl.formatMessage(messages.flags),\n        custom: intl.formatMessage(messages.custom),\n      },\n    };\n  }\n\n  handleClick = emoji => {\n    if (!emoji.native) {\n      emoji.native = emoji.colons;\n    }\n\n    this.props.onClose();\n    this.props.onPick(emoji);\n  }\n\n  handleModifierOpen = () => {\n    this.setState({ modifierOpen: true });\n  }\n\n  handleModifierClose = () => {\n    this.setState({ modifierOpen: false });\n  }\n\n  handleModifierChange = modifier => {\n    this.props.onSkinTone(modifier);\n  }\n\n  render () {\n    const { loading, style, intl, custom_emojis, skinTone, frequentlyUsedEmojis } = this.props;\n\n    if (loading) {\n      return <div style={{ width: 299 }} />;\n    }\n\n    const title = intl.formatMessage(messages.emoji);\n    const { modifierOpen } = this.state;\n\n    return (\n      <div className={classNames('emoji-picker-dropdown__menu', { selecting: modifierOpen })} style={style} ref={this.setRef}>\n        <EmojiPicker\n          perLine={8}\n          emojiSize={22}\n          sheetSize={32}\n          custom={buildCustomEmojis(custom_emojis)}\n          color=''\n          emoji=''\n          set='twitter'\n          title={title}\n          i18n={this.getI18n()}\n          onClick={this.handleClick}\n          include={categoriesSort}\n          recent={frequentlyUsedEmojis}\n          skin={skinTone}\n          showPreview={false}\n          backgroundImageFn={backgroundImageFn}\n          emojiTooltip\n        />\n\n        <ModifierPicker\n          active={modifierOpen}\n          modifier={skinTone}\n          onOpen={this.handleModifierOpen}\n          onClose={this.handleModifierClose}\n          onChange={this.handleModifierChange}\n        />\n      </div>\n    );\n  }\n\n}\n\n@injectIntl\nexport default class EmojiPickerDropdown extends React.PureComponent {\n\n  static propTypes = {\n    custom_emojis: ImmutablePropTypes.list,\n    frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.string),\n    intl: PropTypes.object.isRequired,\n    onPickEmoji: PropTypes.func.isRequired,\n    onSkinTone: PropTypes.func.isRequired,\n    skinTone: PropTypes.number.isRequired,\n  };\n\n  state = {\n    active: false,\n    loading: false,\n  };\n\n  setRef = (c) => {\n    this.dropdown = c;\n  }\n\n  onShowDropdown = ({ target }) => {\n    this.setState({ active: true });\n\n    if (!EmojiPicker) {\n      this.setState({ loading: true });\n\n      EmojiPickerAsync().then(EmojiMart => {\n        EmojiPicker = EmojiMart.Picker;\n        Emoji       = EmojiMart.Emoji;\n\n        this.setState({ loading: false });\n      }).catch(() => {\n        this.setState({ loading: false });\n      });\n    }\n\n    const { top } = target.getBoundingClientRect();\n    this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });\n  }\n\n  onHideDropdown = () => {\n    this.setState({ active: false });\n  }\n\n  onToggle = (e) => {\n    if (!this.state.loading && (!e.key || e.key === 'Enter')) {\n      if (this.state.active) {\n        this.onHideDropdown();\n      } else {\n        this.onShowDropdown(e);\n      }\n    }\n  }\n\n  handleKeyDown = e => {\n    if (e.key === 'Escape') {\n      this.onHideDropdown();\n    }\n  }\n\n  setTargetRef = c => {\n    this.target = c;\n  }\n\n  findTarget = () => {\n    return this.target;\n  }\n\n  render () {\n    const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis } = this.props;\n    const title = intl.formatMessage(messages.emoji);\n    const { active, loading, placement } = this.state;\n\n    return (\n      <div className='emoji-picker-dropdown' onKeyDown={this.handleKeyDown}>\n        <div ref={this.setTargetRef} className='emoji-button' title={title} aria-label={title} aria-expanded={active} role='button' onClick={this.onToggle} onKeyDown={this.onToggle} tabIndex={0}>\n          <img\n            className={classNames('emojione', { 'pulse-loading': active && loading })}\n            alt='🙂'\n            src={`${assetHost}/emoji/1f602.svg`}\n          />\n        </div>\n\n        <Overlay show={active} placement={placement} target={this.findTarget}>\n          <EmojiPickerMenu\n            custom_emojis={this.props.custom_emojis}\n            loading={loading}\n            onClose={this.onHideDropdown}\n            onPick={onPickEmoji}\n            onSkinTone={onSkinTone}\n            skinTone={skinTone}\n            frequentlyUsedEmojis={frequentlyUsedEmojis}\n          />\n        </Overlay>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js","import { connect } from 'react-redux';\nimport UploadForm from '../components/upload_form';\n\nconst mapStateToProps = state => ({\n  mediaIds: state.getIn(['compose', 'media_attachments']).map(item => item.get('id')),\n});\n\nexport default connect(mapStateToProps)(UploadForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_form_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport UploadProgressContainer from '../containers/upload_progress_container';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport UploadContainer from '../containers/upload_container';\n\nexport default class UploadForm extends ImmutablePureComponent {\n\n  static propTypes = {\n    mediaIds: ImmutablePropTypes.list.isRequired,\n  };\n\n  render () {\n    const { mediaIds } = this.props;\n\n    return (\n      <div className='compose-form__upload-wrapper'>\n        <UploadProgressContainer />\n\n        <div className='compose-form__uploads-wrapper'>\n          {mediaIds.map(id => (\n            <UploadContainer id={id} key={id} />\n          ))}\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_form.js","import { connect } from 'react-redux';\nimport UploadProgress from '../components/upload_progress';\n\nconst mapStateToProps = state => ({\n  active: state.getIn(['compose', 'is_uploading']),\n  progress: state.getIn(['compose', 'progress']),\n});\n\nexport default connect(mapStateToProps)(UploadProgress);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_progress_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { FormattedMessage } from 'react-intl';\n\nexport default class UploadProgress extends React.PureComponent {\n\n  static propTypes = {\n    active: PropTypes.bool,\n    progress: PropTypes.number,\n  };\n\n  render () {\n    const { active, progress } = this.props;\n\n    if (!active) {\n      return null;\n    }\n\n    return (\n      <div className='upload-progress'>\n        <div className='upload-progress__icon'>\n          <i className='fa fa-upload' />\n        </div>\n\n        <div className='upload-progress__message'>\n          <FormattedMessage id='upload_progress.label' defaultMessage='Uploading...' />\n\n          <div className='upload-progress__backdrop'>\n            <Motion defaultStyle={{ width: 0 }} style={{ width: spring(progress) }}>\n              {({ width }) =>\n                <div className='upload-progress__tracker' style={{ width: `${width}%` }} />\n              }\n            </Motion>\n          </div>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload_progress.js","import { connect } from 'react-redux';\nimport Upload from '../components/upload';\nimport { undoUploadCompose, changeUploadCompose } from '../../../actions/compose';\nimport { openModal } from '../../../actions/modal';\n\nconst mapStateToProps = (state, { id }) => ({\n  media: state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onUndo: id => {\n    dispatch(undoUploadCompose(id));\n  },\n\n  onDescriptionChange: (id, description) => {\n    dispatch(changeUploadCompose(id, { description }));\n  },\n\n  onOpenFocalPoint: id => {\n    dispatch(openModal('FOCAL_POINT', { id }));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Upload);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/upload_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport classNames from 'classnames';\n\nconst messages = defineMessages({\n  description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },\n});\n\n@injectIntl\nexport default class Upload extends ImmutablePureComponent {\n\n  static propTypes = {\n    media: ImmutablePropTypes.map.isRequired,\n    intl: PropTypes.object.isRequired,\n    onUndo: PropTypes.func.isRequired,\n    onDescriptionChange: PropTypes.func.isRequired,\n    onOpenFocalPoint: PropTypes.func.isRequired,\n  };\n\n  state = {\n    hovered: false,\n    focused: false,\n    dirtyDescription: null,\n  };\n\n  handleUndoClick = () => {\n    this.props.onUndo(this.props.media.get('id'));\n  }\n\n  handleFocalPointClick = () => {\n    this.props.onOpenFocalPoint(this.props.media.get('id'));\n  }\n\n  handleInputChange = e => {\n    this.setState({ dirtyDescription: e.target.value });\n  }\n\n  handleMouseEnter = () => {\n    this.setState({ hovered: true });\n  }\n\n  handleMouseLeave = () => {\n    this.setState({ hovered: false });\n  }\n\n  handleInputFocus = () => {\n    this.setState({ focused: true });\n  }\n\n  handleInputBlur = () => {\n    const { dirtyDescription } = this.state;\n\n    this.setState({ focused: false, dirtyDescription: null });\n\n    if (dirtyDescription !== null) {\n      this.props.onDescriptionChange(this.props.media.get('id'), dirtyDescription);\n    }\n  }\n\n  render () {\n    const { intl, media } = this.props;\n    const active          = this.state.hovered || this.state.focused;\n    const description     = this.state.dirtyDescription || (this.state.dirtyDescription !== '' && media.get('description')) || '';\n    const focusX = media.getIn(['meta', 'focus', 'x']);\n    const focusY = media.getIn(['meta', 'focus', 'y']);\n    const x = ((focusX /  2) + .5) * 100;\n    const y = ((focusY / -2) + .5) * 100;\n\n    return (\n      <div className='compose-form__upload' onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>\n        <Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>\n          {({ scale }) => (\n            <div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>\n              <div className={classNames('compose-form__upload__actions', { active })}>\n                <button className='icon-button' onClick={this.handleUndoClick}><i className='fa fa-times' /> <FormattedMessage id='upload_form.undo' defaultMessage='Delete' /></button>\n                {media.get('type') === 'image' && <button className='icon-button' onClick={this.handleFocalPointClick}><i className='fa fa-crosshairs' /> <FormattedMessage id='upload_form.focus' defaultMessage='Crop' /></button>}\n              </div>\n\n              <div className={classNames('compose-form__upload-description', { active })}>\n                <label>\n                  <span style={{ display: 'none' }}>{intl.formatMessage(messages.description)}</span>\n\n                  <input\n                    placeholder={intl.formatMessage(messages.description)}\n                    type='text'\n                    value={description}\n                    maxLength={420}\n                    onFocus={this.handleInputFocus}\n                    onChange={this.handleInputChange}\n                    onBlur={this.handleInputBlur}\n                  />\n                </label>\n              </div>\n            </div>\n          )}\n        </Motion>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/upload.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport Warning from '../components/warning';\nimport PropTypes from 'prop-types';\nimport { FormattedMessage } from 'react-intl';\nimport { me } from '../../../initial_state';\n\nconst APPROX_HASHTAG_RE = /(?:^|[^\\/\\)\\w])#(\\w*[a-zA-Z·]\\w*)/i;\n\nconst mapStateToProps = state => ({\n  needsLockWarning: state.getIn(['compose', 'privacy']) === 'private' && !state.getIn(['accounts', me, 'locked']),\n  hashtagWarning: state.getIn(['compose', 'privacy']) !== 'public' && APPROX_HASHTAG_RE.test(state.getIn(['compose', 'text'])),\n  directMessageWarning: state.getIn(['compose', 'privacy']) === 'direct',\n});\n\nconst WarningWrapper = ({ needsLockWarning, hashtagWarning, directMessageWarning }) => {\n  if (needsLockWarning) {\n    return <Warning message={<FormattedMessage id='compose_form.lock_disclaimer' defaultMessage='Your account is not {locked}. Anyone can follow you to view your follower-only posts.' values={{ locked: <a href='/user-settings'><FormattedMessage id='compose_form.lock_disclaimer.lock' defaultMessage='locked' /></a> }} />} />;\n  }\n\n  if (hashtagWarning) {\n    return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage=\"This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.\" />} />;\n  }\n\n  if (directMessageWarning) {\n    const message = (\n      <span>\n        <FormattedMessage id='compose_form.direct_message_warning' defaultMessage='This toot will only be sent to all the mentioned users.' /> <a href='/terms' target='_blank'><FormattedMessage id='compose_form.direct_message_warning_learn_more' defaultMessage='Learn more' /></a>\n      </span>\n    );\n\n    return <Warning message={message} />;\n  }\n\n  return null;\n};\n\nWarningWrapper.propTypes = {\n  needsLockWarning: PropTypes.bool,\n  hashtagWarning: PropTypes.bool,\n  directMessageWarning: PropTypes.bool,\n};\n\nexport default connect(mapStateToProps)(WarningWrapper);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/warning_container.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\n\nexport default class Warning extends React.PureComponent {\n\n  static propTypes = {\n    message: PropTypes.node.isRequired,\n  };\n\n  render () {\n    const { message } = this.props;\n\n    return (\n      <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n        {({ opacity, scaleX, scaleY }) => (\n          <div className='compose-form__warning' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n            {message}\n          </div>\n        )}\n      </Motion>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/warning.js","import { connect } from 'react-redux';\nimport ComposeForm from '../components/compose_form';\nimport { uploadCompose } from '../../../actions/compose';\nimport {\n  changeCompose,\n  submitCompose,\n  clearComposeSuggestions,\n  fetchComposeSuggestions,\n  selectComposeSuggestion,\n  changeComposeSpoilerText,\n  insertEmojiCompose,\n} from '../../../actions/compose';\n\nconst mapStateToProps = state => ({\n  text: state.getIn(['compose', 'text']),\n  suggestion_token: state.getIn(['compose', 'suggestion_token']),\n  suggestions: state.getIn(['compose', 'suggestions']),\n  spoiler: state.getIn(['compose', 'spoiler']),\n  spoiler_text: state.getIn(['compose', 'spoiler_text']),\n  privacy: state.getIn(['compose', 'privacy']),\n  focusDate: state.getIn(['compose', 'focusDate']),\n  caretPosition: state.getIn(['compose', 'caretPosition']),\n  preselectDate: state.getIn(['compose', 'preselectDate']),\n  is_submitting: state.getIn(['compose', 'is_submitting']),\n  is_uploading: state.getIn(['compose', 'is_uploading']),\n  showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),\n  anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n\n  onChange (text) {\n    dispatch(changeCompose(text));\n  },\n\n  onSubmit () {\n    dispatch(submitCompose());\n  },\n\n  onClearSuggestions () {\n    dispatch(clearComposeSuggestions());\n  },\n\n  onFetchSuggestions (token) {\n    dispatch(fetchComposeSuggestions(token));\n  },\n\n  onSuggestionSelected (position, token, accountId) {\n    dispatch(selectComposeSuggestion(position, token, accountId));\n  },\n\n  onChangeSpoilerText (checked) {\n    dispatch(changeComposeSpoilerText(checked));\n  },\n\n  onPaste (files) {\n    dispatch(uploadCompose(files));\n  },\n\n  onPickEmoji (position, data, needsSpace) {\n    dispatch(insertEmojiCompose(position, data, needsSpace));\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ComposeForm);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/compose_form_container.js","import React from 'react';\nimport ComposeFormContainer from './containers/compose_form_container';\nimport NavigationContainer from './containers/navigation_container';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\nimport { mountCompose, unmountCompose } from '../../actions/compose';\nimport { Link } from 'react-router-dom';\nimport { injectIntl, defineMessages } from 'react-intl';\nimport SearchContainer from './containers/search_container';\nimport Motion from '../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport SearchResultsContainer from './containers/search_results_container';\nimport { changeComposing } from '../../actions/compose';\n\nconst messages = defineMessages({\n  start: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n  home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },\n  notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },\n  public: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n  community: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n  logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },\n});\n\nconst mapStateToProps = (state, ownProps) => ({\n  columns: state.getIn(['settings', 'columns']),\n  showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage,\n});\n\n@connect(mapStateToProps)\n@injectIntl\nexport default class Compose extends React.PureComponent {\n\n  static propTypes = {\n    dispatch: PropTypes.func.isRequired,\n    columns: ImmutablePropTypes.list.isRequired,\n    multiColumn: PropTypes.bool,\n    showSearch: PropTypes.bool,\n    isSearchPage: PropTypes.bool,\n    intl: PropTypes.object.isRequired,\n  };\n\n  componentDidMount () {\n    const { isSearchPage } = this.props;\n\n    if (!isSearchPage) {\n      this.props.dispatch(mountCompose());\n    }\n  }\n\n  componentWillUnmount () {\n    const { isSearchPage } = this.props;\n\n    if (!isSearchPage) {\n      this.props.dispatch(unmountCompose());\n    }\n  }\n\n  onFocus = () => {\n    this.props.dispatch(changeComposing(true));\n  }\n\n  onBlur = () => {\n    this.props.dispatch(changeComposing(false));\n  }\n\n  render () {\n    const { multiColumn, showSearch, isSearchPage, intl } = this.props;\n\n    let header = '';\n\n    if (multiColumn) {\n      const { columns } = this.props;\n      header = (\n        <nav className='drawer__header'>\n          <Link to='/getting-started' className='drawer__tab' title={intl.formatMessage(messages.start)} aria-label={intl.formatMessage(messages.start)}><i role='img' className='fa fa-fw fa-bars' /></Link>\n          {!columns.some(column => column.get('id') === 'HOME') && (\n            <Link to='/timelines/home' className='drawer__tab' title={intl.formatMessage(messages.home_timeline)} aria-label={intl.formatMessage(messages.home_timeline)}><i role='img' className='fa fa-fw fa-home' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'NOTIFICATIONS') && (\n            <Link to='/notifications' className='drawer__tab' title={intl.formatMessage(messages.notifications)} aria-label={intl.formatMessage(messages.notifications)}><i role='img' className='fa fa-fw fa-bell' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'COMMUNITY') && (\n            <Link to='/timelines/public/local' className='drawer__tab' title={intl.formatMessage(messages.community)} aria-label={intl.formatMessage(messages.community)}><i role='img' className='fa fa-fw fa-users' /></Link>\n          )}\n          {!columns.some(column => column.get('id') === 'PUBLIC') && (\n            <Link to='/timelines/public' className='drawer__tab' title={intl.formatMessage(messages.public)} aria-label={intl.formatMessage(messages.public)}><i role='img' className='fa fa-fw fa-globe' /></Link>\n          )}\n          <a href='/user-settings' className='drawer__tab' title={intl.formatMessage(messages.preferences)} aria-label={intl.formatMessage(messages.preferences)}><i role='img' className='fa fa-fw fa-cog' /></a>\n          <a href='/auth/sign_out' className='drawer__tab' data-method='delete' title={intl.formatMessage(messages.logout)} aria-label={intl.formatMessage(messages.logout)}><i role='img' className='fa fa-fw fa-sign-out' /></a>\n        </nav>\n      );\n    }\n\n    return (\n      <div className='drawer'>\n        {header}\n\n        {(multiColumn || isSearchPage) && <SearchContainer /> }\n\n        <div className='drawer__pager'>\n          {!isSearchPage && <div className='drawer__inner' onFocus={this.onFocus}>\n            <NavigationContainer onClose={this.onBlur} />\n            <ComposeFormContainer />\n          </div>}\n\n          <Motion defaultStyle={{ x: isSearchPage ? 0 : -100 }} style={{ x: spring(showSearch || isSearchPage ? 0 : -100, { stiffness: 210, damping: 20 }) }}>\n            {({ x }) => (\n              <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}>\n                <SearchResultsContainer />\n              </div>\n            )}\n          </Motion>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/index.js","import React from 'react';\nimport { connect } from 'react-redux';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { makeGetAccount } from '../selectors';\nimport Account from '../components/account';\nimport {\n  followAccount,\n  unfollowAccount,\n  blockAccount,\n  unblockAccount,\n  muteAccount,\n  unmuteAccount,\n} from '../actions/accounts';\nimport { openModal } from '../actions/modal';\nimport { initMuteModal } from '../actions/mutes';\nimport { unfollowModal } from '../initial_state';\n\nconst messages = defineMessages({\n  unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },\n});\n\nconst makeMapStateToProps = () => {\n  const getAccount = makeGetAccount();\n\n  const mapStateToProps = (state, props) => ({\n    account: getAccount(state, props.id),\n  });\n\n  return mapStateToProps;\n};\n\nconst mapDispatchToProps = (dispatch, { intl }) => ({\n\n  onFollow (account) {\n    if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {\n      if (unfollowModal) {\n        dispatch(openModal('CONFIRM', {\n          message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,\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 <div />;\n    }\n\n    if (hidden) {\n      return (\n        <div>\n          {account.get('display_name')}\n          {account.get('username')}\n        </div>\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 = <IconButton disabled icon='hourglass' title={intl.formatMessage(messages.requested)} />;\n      } else if (blocking) {\n        buttons = <IconButton active icon='unlock-alt' title={intl.formatMessage(messages.unblock, { name: account.get('username') })} onClick={this.handleBlock} />;\n      } else if (muting) {\n        let hidingNotificationsButton;\n        if (account.getIn(['relationship', 'muting_notifications'])) {\n          hidingNotificationsButton = <IconButton active icon='bell' title={intl.formatMessage(messages.unmute_notifications, { name: account.get('username') })} onClick={this.handleUnmuteNotifications} />;\n        } else {\n          hidingNotificationsButton = <IconButton active icon='bell-slash' title={intl.formatMessage(messages.mute_notifications, { name: account.get('username')  })} onClick={this.handleMuteNotifications} />;\n        }\n        buttons = (\n          <Fragment>\n            <IconButton active icon='volume-up' title={intl.formatMessage(messages.unmute, { name: account.get('username') })} onClick={this.handleMute} />\n            {hidingNotificationsButton}\n          </Fragment>\n        );\n      } else if (!account.get('moved') || following) {\n        buttons = <IconButton icon={following ? 'user-times' : 'user-plus'} title={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={this.handleFollow} active={following} />;\n      }\n    }\n\n    return (\n      <div className='account'>\n        <div className='account__wrapper'>\n          <Permalink key={account.get('id')} className='account__display-name' href={account.get('url')} to={`/accounts/${account.get('id')}`}>\n            <div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>\n            <DisplayName account={account} />\n          </Permalink>\n\n          <div className='account__relationship'>\n            {buttons}\n          </div>\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React, { Fragment } from 'react';\nimport { FormattedNumber } from 'react-intl';\n\nexport const shortNumberFormat = number => {\n  if (number < 1000) {\n    return <FormattedNumber value={number} />;\n  } else {\n    return <Fragment><FormattedNumber value={number / 1000} maximumFractionDigits={1} />K</Fragment>;\n  }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/utils/numbers.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ActionBar from './action_bar';\nimport Avatar from '../../../components/avatar';\nimport Permalink from '../../../components/permalink';\nimport IconButton from '../../../components/icon_button';\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      <div className='navigation-bar'>\n        <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n          <span style={{ display: 'none' }}>{this.props.account.get('acct')}</span>\n          <Avatar account={this.props.account} size={40} />\n        </Permalink>\n\n        <div className='navigation-bar__profile'>\n          <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>\n            <strong className='navigation-bar__profile-account'>@{this.props.account.get('acct')}</strong>\n          </Permalink>\n        </div>\n\n        <div className='navigation-bar__actions'>\n          <IconButton className='close' title='' icon='close' onClick={this.props.onClose} />\n          <ActionBar account={this.props.account} />\n        </div>\n      </div>\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 ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport DropdownMenuContainer from '../../../containers/dropdown_menu_container';\nimport { defineMessages, injectIntl } from 'react-intl';\n\nconst messages = defineMessages({\n  edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },\n  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned toots' },\n  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n  follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },\n  favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },\n  lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' },\n  blocks: { id: 'navigation_bar.blocks', defaultMessage: 'Blocked users' },\n  domain_blocks: { id: 'navigation_bar.domain_blocks', defaultMessage: 'Hidden domains' },\n  mutes: { id: 'navigation_bar.mutes', defaultMessage: 'Muted users' },\n});\n\n@injectIntl\nexport default class ActionBar extends React.PureComponent {\n\n  static propTypes = {\n    account: ImmutablePropTypes.map.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  render () {\n    const { intl } = this.props;\n\n    let menu = [];\n\n    menu.push({ text: intl.formatMessage(messages.preferences), href: '/user-settings' });\n    menu.push({ text: intl.formatMessage(messages.pins), to: '/pinned' });\n    menu.push(null);\n    menu.push({ text: intl.formatMessage(messages.follow_requests), to: '/follow_requests' });\n    menu.push({ text: intl.formatMessage(messages.favourites), to: '/favourites' });\n    menu.push({ text: intl.formatMessage(messages.lists), to: '/lists' });\n    menu.push(null);\n    menu.push({ text: intl.formatMessage(messages.mutes), to: '/mutes' });\n    menu.push({ text: intl.formatMessage(messages.blocks), to: '/blocks' });\n    menu.push({ text: intl.formatMessage(messages.domain_blocks), to: '/domain_blocks' });\n\n    return (\n      <div className='compose__action-bar'>\n        <div className='compose__action-bar-dropdown'>\n          <DropdownMenuContainer items={menu} icon='ellipsis-v' size={24} direction='right' />\n        </div>\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/action_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 ? <FormattedMessage id='search_popout.tips.full_text' defaultMessage='Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.' /> : <FormattedMessage id='search_popout.tips.text' defaultMessage='Simple text returns matching display names, usernames and hashtags' />;\n    return (\n      <div style={{ ...style, position: 'absolute', width: 315 }}>\n        <Motion defaultStyle={{ opacity: 0, scaleX: 0.85, scaleY: 0.75 }} style={{ opacity: spring(1, { damping: 35, stiffness: 400 }), scaleX: spring(1, { damping: 35, stiffness: 400 }), scaleY: spring(1, { damping: 35, stiffness: 400 }) }}>\n          {({ opacity, scaleX, scaleY }) => (\n            <div className='search-popout' style={{ opacity: opacity, transform: `scale(${scaleX}, ${scaleY})` }}>\n              <h4><FormattedMessage id='search_popout.search_format' defaultMessage='Advanced search format' /></h4>\n\n              <ul>\n                <li><em>#example</em> <FormattedMessage id='search_popout.tips.hashtag' defaultMessage='hashtag' /></li>\n                <li><em>@username@domain</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n                <li><em>URL</em> <FormattedMessage id='search_popout.tips.user' defaultMessage='user' /></li>\n                <li><em>URL</em> <FormattedMessage id='search_popout.tips.status' defaultMessage='status' /></li>\n              </ul>\n\n              {extraInformation}\n            </div>\n          )}\n        </Motion>\n      </div>\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      <div className='search'>\n        <label>\n          <span style={{ display: 'none' }}>{intl.formatMessage(messages.placeholder)}</span>\n          <input\n            className='search__input'\n            type='text'\n            placeholder={intl.formatMessage(messages.placeholder)}\n            value={value}\n            onChange={this.handleChange}\n            onKeyUp={this.handleKeyDown}\n            onFocus={this.handleFocus}\n            onBlur={this.handleBlur}\n          />\n        </label>\n\n        <div role='button' tabIndex='0' className='search__icon' onClick={this.handleClear}>\n          <i className={`fa fa-search ${hasValue ? '' : 'active'}`} />\n          <i aria-label={intl.formatMessage(messages.placeholder)} className={`fa fa-times-circle ${hasValue ? 'active' : ''}`} />\n        </div>\n\n        <Overlay show={expanded && !hasValue} placement='bottom' target={this}>\n          <SearchPopout />\n        </Overlay>\n      </div>\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 ImmutablePureComponent from 'react-immutable-pure-component';\nimport Hashtag from '../../../components/hashtag';\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        <div className='search-results__section'>\n          <h5><i className='fa fa-fw fa-users' /><FormattedMessage id='search_results.accounts' defaultMessage='People' /></h5>\n\n          {results.get('accounts').map(accountId => <AccountContainer key={accountId} id={accountId} />)}\n        </div>\n      );\n    }\n\n    if (results.get('statuses') && results.get('statuses').size > 0) {\n      count   += results.get('statuses').size;\n      statuses = (\n        <div className='search-results__section'>\n          <h5><i className='fa fa-fw fa-quote-right' /><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>\n\n          {results.get('statuses').map(statusId => <StatusContainer key={statusId} id={statusId} />)}\n        </div>\n      );\n    }\n\n    if (results.get('hashtags') && results.get('hashtags').size > 0) {\n      count += results.get('hashtags').size;\n      hashtags = (\n        <div className='search-results__section'>\n          <h5><i className='fa fa-fw fa-hashtag' /><FormattedMessage id='search_results.hashtags' defaultMessage='Hashtags' /></h5>\n\n          {results.get('hashtags').map(hashtag => <Hashtag key={hashtag.get('name')} hashtag={hashtag} />)}\n        </div>\n      );\n    }\n\n    return (\n      <div className='search-results'>\n        <div className='search-results__header'>\n          <i className='fa fa-search fa-fw' />\n          <FormattedMessage id='search_results.total' defaultMessage='{count, number} {count, plural, one {result} other {results}}' values={{ count }} />\n        </div>\n\n        {accounts}\n        {statuses}\n        {hashtags}\n      </div>\n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search_results.js","import React from 'react';\nimport { Sparklines, SparklinesCurve } from 'react-sparklines';\nimport { Link } from 'react-router-dom';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { shortNumberFormat } from '../utils/numbers';\n\nconst Hashtag = ({ hashtag }) => (\n  <div className='trends__item'>\n    <div className='trends__item__name'>\n      <Link to={`/timelines/tag/${hashtag.get('name')}`}>\n        #<span>{hashtag.get('name')}</span>\n      </Link>\n\n      <FormattedMessage id='trends.count_by_accounts' defaultMessage='{count} {rawCount, plural, one {person} other {people}} talking' values={{ rawCount: hashtag.getIn(['history', 0, 'accounts']), count: <strong>{shortNumberFormat(hashtag.getIn(['history', 0, 'accounts']))}</strong> }} />\n    </div>\n\n    <div className='trends__item__current'>\n      {shortNumberFormat(hashtag.getIn(['history', 0, 'uses']))}\n    </div>\n\n    <div className='trends__item__sparkline'>\n      <Sparklines width={50} height={28} data={hashtag.get('history') && hashtag.get('history').reverse().map(day => day.get('uses')).toArray()}>\n        <SparklinesCurve style={{ fill: 'none' }} />\n      </Sparklines>\n    </div>\n  </div>\n);\n\nHashtag.propTypes = {\n  hashtag: ImmutablePropTypes.map.isRequired,\n};\n\nexport default Hashtag;\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/hashtag.js","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactSparklines\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"ReactSparklines\"] = factory(root[\"React\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_1__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 11);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n  var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&\n    Symbol.for &&\n    Symbol.for('react.element')) ||\n    0xeac7;\n\n  var isValidElement = function(object) {\n    return typeof object === 'object' &&\n      object !== null &&\n      object.$$typeof === REACT_ELEMENT_TYPE;\n  };\n\n  // By explicitly using `prop-types` you are opting into new development behavior.\n  // http://fb.me/prop-types-in-prod\n  var throwOnDirectAccess = true;\n  module.exports = __webpack_require__(14)(isValidElement, throwOnDirectAccess);\n} else {\n  // By explicitly using `prop-types` you are opting into new production behavior.\n  // http://fb.me/prop-types-in-prod\n  module.exports = __webpack_require__(16)();\n}\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)))\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things.  But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals.  It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n    throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n    throw new Error('clearTimeout has not been defined');\n}\n(function () {\n    try {\n        if (typeof setTimeout === 'function') {\n            cachedSetTimeout = setTimeout;\n        } else {\n            cachedSetTimeout = defaultSetTimout;\n        }\n    } catch (e) {\n        cachedSetTimeout = defaultSetTimout;\n    }\n    try {\n        if (typeof clearTimeout === 'function') {\n            cachedClearTimeout = clearTimeout;\n        } else {\n            cachedClearTimeout = defaultClearTimeout;\n        }\n    } catch (e) {\n        cachedClearTimeout = defaultClearTimeout;\n    }\n} ())\nfunction runTimeout(fun) {\n    if (cachedSetTimeout === setTimeout) {\n        //normal enviroments in sane situations\n        return setTimeout(fun, 0);\n    }\n    // if setTimeout wasn't available but was latter defined\n    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n        cachedSetTimeout = setTimeout;\n        return setTimeout(fun, 0);\n    }\n    try {\n        // when when somebody has screwed with setTimeout but no I.E. maddness\n        return cachedSetTimeout(fun, 0);\n    } catch(e){\n        try {\n            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n            return cachedSetTimeout.call(null, fun, 0);\n        } catch(e){\n            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n            return cachedSetTimeout.call(this, fun, 0);\n        }\n    }\n\n\n}\nfunction runClearTimeout(marker) {\n    if (cachedClearTimeout === clearTimeout) {\n        //normal enviroments in sane situations\n        return clearTimeout(marker);\n    }\n    // if clearTimeout wasn't available but was latter defined\n    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n        cachedClearTimeout = clearTimeout;\n        return clearTimeout(marker);\n    }\n    try {\n        // when when somebody has screwed with setTimeout but no I.E. maddness\n        return cachedClearTimeout(marker);\n    } catch (e){\n        try {\n            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally\n            return cachedClearTimeout.call(null, marker);\n        } catch (e){\n            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n            // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n            return cachedClearTimeout.call(this, marker);\n        }\n    }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n    if (!draining || !currentQueue) {\n        return;\n    }\n    draining = false;\n    if (currentQueue.length) {\n        queue = currentQueue.concat(queue);\n    } else {\n        queueIndex = -1;\n    }\n    if (queue.length) {\n        drainQueue();\n    }\n}\n\nfunction drainQueue() {\n    if (draining) {\n        return;\n    }\n    var timeout = runTimeout(cleanUpNextTick);\n    draining = true;\n\n    var len = queue.length;\n    while(len) {\n        currentQueue = queue;\n        queue = [];\n        while (++queueIndex < len) {\n            if (currentQueue) {\n                currentQueue[queueIndex].run();\n            }\n        }\n        queueIndex = -1;\n        len = queue.length;\n    }\n    currentQueue = null;\n    draining = false;\n    runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n    var args = new Array(arguments.length - 1);\n    if (arguments.length > 1) {\n        for (var i = 1; i < arguments.length; i++) {\n            args[i - 1] = arguments[i];\n        }\n    }\n    queue.push(new Item(fun, args));\n    if (queue.length === 1 && !draining) {\n        runTimeout(drainQueue);\n    }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n    this.fun = fun;\n    this.array = array;\n}\nItem.prototype.run = function () {\n    this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n    throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n    throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nexports.default = function (data) {\n    return data.reduce(function (a, b) {\n        return a + b;\n    }) / data.length;\n};\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n  return function () {\n    return arg;\n  };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n  return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n  return arg;\n};\n\nmodule.exports = emptyFunction;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\n\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n  validateFormat = function validateFormat(format) {\n    if (format === undefined) {\n      throw new Error('invariant requires an error message argument');\n    }\n  };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n  validateFormat(format);\n\n  if (!condition) {\n    var error;\n    if (format === undefined) {\n      error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n    } else {\n      var args = [a, b, c, d, e, f];\n      var argIndex = 0;\n      error = new Error(format.replace(/%s/g, function () {\n        return args[argIndex++];\n      }));\n      error.name = 'Invariant Violation';\n    }\n\n    error.framesToPop = 1; // we don't care about invariant's own frame\n    throw error;\n  }\n}\n\nmodule.exports = invariant;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)))\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nexports.default = function (data) {\n    return Math.min.apply(Math, data);\n};\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\n\n\nvar emptyFunction = __webpack_require__(4);\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n  var printWarning = function printWarning(format) {\n    for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n      args[_key - 1] = arguments[_key];\n    }\n\n    var argIndex = 0;\n    var message = 'Warning: ' + format.replace(/%s/g, function () {\n      return args[argIndex++];\n    });\n    if (typeof console !== 'undefined') {\n      console.error(message);\n    }\n    try {\n      // --- Welcome to debugging React ---\n      // This error was thrown as a convenience so that you can use this stack\n      // to find the callsite that caused this warning to fire.\n      throw new Error(message);\n    } catch (x) {}\n  };\n\n  warning = function warning(condition, format) {\n    if (format === undefined) {\n      throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n    }\n\n    if (format.indexOf('Failed Composite propType: ') === 0) {\n      return; // Ignore CompositeComponent proptype check.\n    }\n\n    if (!condition) {\n      for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n        args[_key2 - 2] = arguments[_key2];\n      }\n\n      printWarning.apply(undefined, [format].concat(args));\n    }\n  };\n}\n\nmodule.exports = warning;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)))\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nexports.default = function (data) {\n    return Math.max.apply(Math, data);\n};\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _mean = __webpack_require__(3);\n\nvar _mean2 = _interopRequireDefault(_mean);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (data) {\n    var dataMean = (0, _mean2.default)(data);\n    var sqDiff = data.map(function (n) {\n        return Math.pow(n - dataMean, 2);\n    });\n    var avgSqDiff = (0, _mean2.default)(sqDiff);\n    return Math.sqrt(avgSqDiff);\n};\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(12);\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nmodule.exports = __webpack_require__(13);\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nexports.SparklinesText = exports.SparklinesNormalBand = exports.SparklinesReferenceLine = exports.SparklinesSpots = exports.SparklinesBars = exports.SparklinesCurve = exports.SparklinesLine = exports.Sparklines = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _SparklinesText = __webpack_require__(17);\n\nvar _SparklinesText2 = _interopRequireDefault(_SparklinesText);\n\nvar _SparklinesLine = __webpack_require__(18);\n\nvar _SparklinesLine2 = _interopRequireDefault(_SparklinesLine);\n\nvar _SparklinesCurve = __webpack_require__(19);\n\nvar _SparklinesCurve2 = _interopRequireDefault(_SparklinesCurve);\n\nvar _SparklinesBars = __webpack_require__(20);\n\nvar _SparklinesBars2 = _interopRequireDefault(_SparklinesBars);\n\nvar _SparklinesSpots = __webpack_require__(21);\n\nvar _SparklinesSpots2 = _interopRequireDefault(_SparklinesSpots);\n\nvar _SparklinesReferenceLine = __webpack_require__(22);\n\nvar _SparklinesReferenceLine2 = _interopRequireDefault(_SparklinesReferenceLine);\n\nvar _SparklinesNormalBand = __webpack_require__(27);\n\nvar _SparklinesNormalBand2 = _interopRequireDefault(_SparklinesNormalBand);\n\nvar _dataToPoints = __webpack_require__(28);\n\nvar _dataToPoints2 = _interopRequireDefault(_dataToPoints);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Sparklines = function (_PureComponent) {\n    _inherits(Sparklines, _PureComponent);\n\n    function Sparklines(props) {\n        _classCallCheck(this, Sparklines);\n\n        return _possibleConstructorReturn(this, (Sparklines.__proto__ || Object.getPrototypeOf(Sparklines)).call(this, props));\n    }\n\n    _createClass(Sparklines, [{\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                data = _props.data,\n                limit = _props.limit,\n                width = _props.width,\n                height = _props.height,\n                svgWidth = _props.svgWidth,\n                svgHeight = _props.svgHeight,\n                preserveAspectRatio = _props.preserveAspectRatio,\n                margin = _props.margin,\n                style = _props.style,\n                max = _props.max,\n                min = _props.min;\n\n\n            if (data.length === 0) return null;\n\n            var points = (0, _dataToPoints2.default)({ data: data, limit: limit, width: width, height: height, margin: margin, max: max, min: min });\n\n            var svgOpts = { style: style, viewBox: '0 0 ' + width + ' ' + height, preserveAspectRatio: preserveAspectRatio };\n            if (svgWidth > 0) svgOpts.width = svgWidth;\n            if (svgHeight > 0) svgOpts.height = svgHeight;\n\n            return _react2.default.createElement(\n                'svg',\n                svgOpts,\n                _react2.default.Children.map(this.props.children, function (child) {\n                    return _react2.default.cloneElement(child, { data: data, points: points, width: width, height: height, margin: margin });\n                })\n            );\n        }\n    }]);\n\n    return Sparklines;\n}(_react.PureComponent);\n\nSparklines.propTypes = {\n    data: _propTypes2.default.array,\n    limit: _propTypes2.default.number,\n    width: _propTypes2.default.number,\n    height: _propTypes2.default.number,\n    svgWidth: _propTypes2.default.number,\n    svgHeight: _propTypes2.default.number,\n    preserveAspectRatio: _propTypes2.default.string,\n    margin: _propTypes2.default.number,\n    style: _propTypes2.default.object,\n    min: _propTypes2.default.number,\n    max: _propTypes2.default.number,\n    onMouseMove: _propTypes2.default.func\n};\nSparklines.defaultProps = {\n    data: [],\n    width: 240,\n    height: 60,\n    //Scale the graphic content of the given element non-uniformly if necessary such that the element's bounding box exactly matches the viewport rectangle.\n    preserveAspectRatio: 'none', //https://www.w3.org/TR/SVG/coords.html#PreserveAspectRatioAttribute\n    margin: 2\n};\nexports.Sparklines = Sparklines;\nexports.SparklinesLine = _SparklinesLine2.default;\nexports.SparklinesCurve = _SparklinesCurve2.default;\nexports.SparklinesBars = _SparklinesBars2.default;\nexports.SparklinesSpots = _SparklinesSpots2.default;\nexports.SparklinesReferenceLine = _SparklinesReferenceLine2.default;\nexports.SparklinesNormalBand = _SparklinesNormalBand2.default;\nexports.SparklinesText = _SparklinesText2.default;\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar emptyFunction = __webpack_require__(4);\nvar invariant = __webpack_require__(5);\nvar warning = __webpack_require__(8);\n\nvar ReactPropTypesSecret = __webpack_require__(6);\nvar checkPropTypes = __webpack_require__(15);\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n  /* global Symbol */\n  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n  /**\n   * Returns the iterator method function contained on the iterable object.\n   *\n   * Be sure to invoke the function with the iterable as context:\n   *\n   *     var iteratorFn = getIteratorFn(myIterable);\n   *     if (iteratorFn) {\n   *       var iterator = iteratorFn.call(myIterable);\n   *       ...\n   *     }\n   *\n   * @param {?object} maybeIterable\n   * @return {?function}\n   */\n  function getIteratorFn(maybeIterable) {\n    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n    if (typeof iteratorFn === 'function') {\n      return iteratorFn;\n    }\n  }\n\n  /**\n   * Collection of methods that allow declaration and validation of props that are\n   * supplied to React components. Example usage:\n   *\n   *   var Props = require('ReactPropTypes');\n   *   var MyArticle = React.createClass({\n   *     propTypes: {\n   *       // An optional string prop named \"description\".\n   *       description: Props.string,\n   *\n   *       // A required enum prop named \"category\".\n   *       category: Props.oneOf(['News','Photos']).isRequired,\n   *\n   *       // A prop named \"dialog\" that requires an instance of Dialog.\n   *       dialog: Props.instanceOf(Dialog).isRequired\n   *     },\n   *     render: function() { ... }\n   *   });\n   *\n   * A more formal specification of how these methods are used:\n   *\n   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n   *   decl := ReactPropTypes.{type}(.isRequired)?\n   *\n   * Each and every declaration produces a function with the same signature. This\n   * allows the creation of custom validation functions. For example:\n   *\n   *  var MyLink = React.createClass({\n   *    propTypes: {\n   *      // An optional string or URI prop named \"href\".\n   *      href: function(props, propName, componentName) {\n   *        var propValue = props[propName];\n   *        if (propValue != null && typeof propValue !== 'string' &&\n   *            !(propValue instanceof URI)) {\n   *          return new Error(\n   *            'Expected a string or an URI for ' + propName + ' in ' +\n   *            componentName\n   *          );\n   *        }\n   *      }\n   *    },\n   *    render: function() {...}\n   *  });\n   *\n   * @internal\n   */\n\n  var ANONYMOUS = '<<anonymous>>';\n\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n  var ReactPropTypes = {\n    array: createPrimitiveTypeChecker('array'),\n    bool: createPrimitiveTypeChecker('boolean'),\n    func: createPrimitiveTypeChecker('function'),\n    number: createPrimitiveTypeChecker('number'),\n    object: createPrimitiveTypeChecker('object'),\n    string: createPrimitiveTypeChecker('string'),\n    symbol: createPrimitiveTypeChecker('symbol'),\n\n    any: createAnyTypeChecker(),\n    arrayOf: createArrayOfTypeChecker,\n    element: createElementTypeChecker(),\n    instanceOf: createInstanceTypeChecker,\n    node: createNodeChecker(),\n    objectOf: createObjectOfTypeChecker,\n    oneOf: createEnumTypeChecker,\n    oneOfType: createUnionTypeChecker,\n    shape: createShapeTypeChecker\n  };\n\n  /**\n   * inlined Object.is polyfill to avoid requiring consumers ship their own\n   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n   */\n  /*eslint-disable no-self-compare*/\n  function is(x, y) {\n    // SameValue algorithm\n    if (x === y) {\n      // Steps 1-5, 7-10\n      // Steps 6.b-6.e: +0 != -0\n      return x !== 0 || 1 / x === 1 / y;\n    } else {\n      // Step 6.a: NaN == NaN\n      return x !== x && y !== y;\n    }\n  }\n  /*eslint-enable no-self-compare*/\n\n  /**\n   * We use an Error-like object for backward compatibility as people may call\n   * PropTypes directly and inspect their output. However, we don't use real\n   * Errors anymore. We don't inspect their stack anyway, and creating them\n   * is prohibitively expensive if they are created too often, such as what\n   * happens in oneOfType() for any type before the one that matched.\n   */\n  function PropTypeError(message) {\n    this.message = message;\n    this.stack = '';\n  }\n  // Make `instanceof Error` still work for returned errors.\n  PropTypeError.prototype = Error.prototype;\n\n  function createChainableTypeChecker(validate) {\n    if (process.env.NODE_ENV !== 'production') {\n      var manualPropTypeCallCache = {};\n      var manualPropTypeWarningCount = 0;\n    }\n    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n      componentName = componentName || ANONYMOUS;\n      propFullName = propFullName || propName;\n\n      if (secret !== ReactPropTypesSecret) {\n        if (throwOnDirectAccess) {\n          // New behavior only for users of `prop-types` package\n          invariant(\n            false,\n            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n            'Use `PropTypes.checkPropTypes()` to call them. ' +\n            'Read more at http://fb.me/use-check-prop-types'\n          );\n        } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n          // Old behavior for people using React.PropTypes\n          var cacheKey = componentName + ':' + propName;\n          if (\n            !manualPropTypeCallCache[cacheKey] &&\n            // Avoid spamming the console because they are often not actionable except for lib authors\n            manualPropTypeWarningCount < 3\n          ) {\n            warning(\n              false,\n              'You are manually calling a React.PropTypes validation ' +\n              'function for the `%s` prop on `%s`. This is deprecated ' +\n              'and will throw in the standalone `prop-types` package. ' +\n              'You may be seeing this warning due to a third-party PropTypes ' +\n              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',\n              propFullName,\n              componentName\n            );\n            manualPropTypeCallCache[cacheKey] = true;\n            manualPropTypeWarningCount++;\n          }\n        }\n      }\n      if (props[propName] == null) {\n        if (isRequired) {\n          if (props[propName] === null) {\n            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n          }\n          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n        }\n        return null;\n      } else {\n        return validate(props, propName, componentName, location, propFullName);\n      }\n    }\n\n    var chainedCheckType = checkType.bind(null, false);\n    chainedCheckType.isRequired = checkType.bind(null, true);\n\n    return chainedCheckType;\n  }\n\n  function createPrimitiveTypeChecker(expectedType) {\n    function validate(props, propName, componentName, location, propFullName, secret) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== expectedType) {\n        // `propValue` being instance of, say, date/regexp, pass the 'object'\n        // check, but we can offer a more precise error message here rather than\n        // 'of type `object`'.\n        var preciseType = getPreciseType(propValue);\n\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createAnyTypeChecker() {\n    return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n  }\n\n  function createArrayOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n      }\n      var propValue = props[propName];\n      if (!Array.isArray(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n      }\n      for (var i = 0; i < propValue.length; i++) {\n        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n        if (error instanceof Error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createElementTypeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      if (!isValidElement(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createInstanceTypeChecker(expectedClass) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!(props[propName] instanceof expectedClass)) {\n        var expectedClassName = expectedClass.name || ANONYMOUS;\n        var actualClassName = getClassName(props[propName]);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createEnumTypeChecker(expectedValues) {\n    if (!Array.isArray(expectedValues)) {\n      process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n      return emptyFunction.thatReturnsNull;\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      for (var i = 0; i < expectedValues.length; i++) {\n        if (is(propValue, expectedValues[i])) {\n          return null;\n        }\n      }\n\n      var valuesString = JSON.stringify(expectedValues);\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createObjectOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n      }\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n      }\n      for (var key in propValue) {\n        if (propValue.hasOwnProperty(key)) {\n          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n          if (error instanceof Error) {\n            return error;\n          }\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createUnionTypeChecker(arrayOfTypeCheckers) {\n    if (!Array.isArray(arrayOfTypeCheckers)) {\n      process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n      return emptyFunction.thatReturnsNull;\n    }\n\n    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n      var checker = arrayOfTypeCheckers[i];\n      if (typeof checker !== 'function') {\n        warning(\n          false,\n          'Invalid argument supplid to oneOfType. Expected an array of check functions, but ' +\n          'received %s at index %s.',\n          getPostfixForTypeWarning(checker),\n          i\n        );\n        return emptyFunction.thatReturnsNull;\n      }\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n        var checker = arrayOfTypeCheckers[i];\n        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n          return null;\n        }\n      }\n\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createNodeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!isNode(props[propName])) {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createShapeTypeChecker(shapeTypes) {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n      }\n      for (var key in shapeTypes) {\n        var checker = shapeTypes[key];\n        if (!checker) {\n          continue;\n        }\n        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n        if (error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function isNode(propValue) {\n    switch (typeof propValue) {\n      case 'number':\n      case 'string':\n      case 'undefined':\n        return true;\n      case 'boolean':\n        return !propValue;\n      case 'object':\n        if (Array.isArray(propValue)) {\n          return propValue.every(isNode);\n        }\n        if (propValue === null || isValidElement(propValue)) {\n          return true;\n        }\n\n        var iteratorFn = getIteratorFn(propValue);\n        if (iteratorFn) {\n          var iterator = iteratorFn.call(propValue);\n          var step;\n          if (iteratorFn !== propValue.entries) {\n            while (!(step = iterator.next()).done) {\n              if (!isNode(step.value)) {\n                return false;\n              }\n            }\n          } else {\n            // Iterator will provide entry [k,v] tuples rather than values.\n            while (!(step = iterator.next()).done) {\n              var entry = step.value;\n              if (entry) {\n                if (!isNode(entry[1])) {\n                  return false;\n                }\n              }\n            }\n          }\n        } else {\n          return false;\n        }\n\n        return true;\n      default:\n        return false;\n    }\n  }\n\n  function isSymbol(propType, propValue) {\n    // Native Symbol.\n    if (propType === 'symbol') {\n      return true;\n    }\n\n    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n    if (propValue['@@toStringTag'] === 'Symbol') {\n      return true;\n    }\n\n    // Fallback for non-spec compliant Symbols which are polyfilled.\n    if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n      return true;\n    }\n\n    return false;\n  }\n\n  // Equivalent of `typeof` but with special handling for array and regexp.\n  function getPropType(propValue) {\n    var propType = typeof propValue;\n    if (Array.isArray(propValue)) {\n      return 'array';\n    }\n    if (propValue instanceof RegExp) {\n      // Old webkits (at least until Android 4.0) return 'function' rather than\n      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n      // passes PropTypes.object.\n      return 'object';\n    }\n    if (isSymbol(propType, propValue)) {\n      return 'symbol';\n    }\n    return propType;\n  }\n\n  // This handles more types than `getPropType`. Only used for error messages.\n  // See `createPrimitiveTypeChecker`.\n  function getPreciseType(propValue) {\n    if (typeof propValue === 'undefined' || propValue === null) {\n      return '' + propValue;\n    }\n    var propType = getPropType(propValue);\n    if (propType === 'object') {\n      if (propValue instanceof Date) {\n        return 'date';\n      } else if (propValue instanceof RegExp) {\n        return 'regexp';\n      }\n    }\n    return propType;\n  }\n\n  // Returns a string that is postfixed to a warning about an invalid type.\n  // For example, \"undefined\" or \"of type array\"\n  function getPostfixForTypeWarning(value) {\n    var type = getPreciseType(value);\n    switch (type) {\n      case 'array':\n      case 'object':\n        return 'an ' + type;\n      case 'boolean':\n      case 'date':\n      case 'regexp':\n        return 'a ' + type;\n      default:\n        return type;\n    }\n  }\n\n  // Returns class name of the object, if any.\n  function getClassName(propValue) {\n    if (!propValue.constructor || !propValue.constructor.name) {\n      return ANONYMOUS;\n    }\n    return propValue.constructor.name;\n  }\n\n  ReactPropTypes.checkPropTypes = checkPropTypes;\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)))\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nif (process.env.NODE_ENV !== 'production') {\n  var invariant = __webpack_require__(5);\n  var warning = __webpack_require__(8);\n  var ReactPropTypesSecret = __webpack_require__(6);\n  var loggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n  if (process.env.NODE_ENV !== 'production') {\n    for (var typeSpecName in typeSpecs) {\n      if (typeSpecs.hasOwnProperty(typeSpecName)) {\n        var error;\n        // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'React.PropTypes.', componentName || 'React class', location, typeSpecName);\n          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n        } catch (ex) {\n          error = ex;\n        }\n        warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n        if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error.message] = true;\n\n          var stack = getStack ? getStack() : '';\n\n          warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n        }\n      }\n    }\n  }\n}\n\nmodule.exports = checkPropTypes;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)))\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n\n\nvar emptyFunction = __webpack_require__(4);\nvar invariant = __webpack_require__(5);\nvar ReactPropTypesSecret = __webpack_require__(6);\n\nmodule.exports = function() {\n  function shim(props, propName, componentName, location, propFullName, secret) {\n    if (secret === ReactPropTypesSecret) {\n      // It is still safe when called from React.\n      return;\n    }\n    invariant(\n      false,\n      'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n      'Use PropTypes.checkPropTypes() to call them. ' +\n      'Read more at http://fb.me/use-check-prop-types'\n    );\n  };\n  shim.isRequired = shim;\n  function getShim() {\n    return shim;\n  };\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n  var ReactPropTypes = {\n    array: shim,\n    bool: shim,\n    func: shim,\n    number: shim,\n    object: shim,\n    string: shim,\n    symbol: shim,\n\n    any: shim,\n    arrayOf: getShim,\n    element: shim,\n    instanceOf: getShim,\n    node: shim,\n    objectOf: getShim,\n    oneOf: getShim,\n    oneOfType: getShim,\n    shape: getShim\n  };\n\n  ReactPropTypes.checkPropTypes = emptyFunction;\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesText = function (_React$Component) {\n    _inherits(SparklinesText, _React$Component);\n\n    function SparklinesText() {\n        _classCallCheck(this, SparklinesText);\n\n        return _possibleConstructorReturn(this, (SparklinesText.__proto__ || Object.getPrototypeOf(SparklinesText)).apply(this, arguments));\n    }\n\n    _createClass(SparklinesText, [{\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                point = _props.point,\n                text = _props.text,\n                fontSize = _props.fontSize,\n                fontFamily = _props.fontFamily;\n            var x = point.x,\n                y = point.y;\n\n            return _react2.default.createElement(\n                'g',\n                null,\n                _react2.default.createElement(\n                    'text',\n                    { x: x, y: y, fontFamily: fontFamily || \"Verdana\", fontSize: fontSize || 10 },\n                    text\n                )\n            );\n        }\n    }]);\n\n    return SparklinesText;\n}(_react2.default.Component);\n\nSparklinesText.propTypes = {\n    text: _propTypes2.default.string,\n    point: _propTypes2.default.object,\n    fontSize: _propTypes2.default.number,\n    fontFamily: _propTypes2.default.string\n};\nSparklinesText.defaultProps = {\n    text: '',\n    point: { x: 0, y: 0 }\n};\nexports.default = SparklinesText;\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesLine = function (_React$Component) {\n  _inherits(SparklinesLine, _React$Component);\n\n  function SparklinesLine() {\n    _classCallCheck(this, SparklinesLine);\n\n    return _possibleConstructorReturn(this, (SparklinesLine.__proto__ || Object.getPrototypeOf(SparklinesLine)).apply(this, arguments));\n  }\n\n  _createClass(SparklinesLine, [{\n    key: 'render',\n    value: function render() {\n      var _props = this.props,\n          data = _props.data,\n          points = _props.points,\n          width = _props.width,\n          height = _props.height,\n          margin = _props.margin,\n          color = _props.color,\n          style = _props.style,\n          onMouseMove = _props.onMouseMove;\n\n\n      var linePoints = points.map(function (p) {\n        return [p.x, p.y];\n      }).reduce(function (a, b) {\n        return a.concat(b);\n      });\n\n      var closePolyPoints = [points[points.length - 1].x, height - margin, margin, height - margin, margin, points[0].y];\n\n      var fillPoints = linePoints.concat(closePolyPoints);\n\n      var lineStyle = {\n        stroke: color || style.stroke || 'slategray',\n        strokeWidth: style.strokeWidth || '1',\n        strokeLinejoin: style.strokeLinejoin || 'round',\n        strokeLinecap: style.strokeLinecap || 'round',\n        fill: 'none'\n      };\n      var fillStyle = {\n        stroke: style.stroke || 'none',\n        strokeWidth: '0',\n        fillOpacity: style.fillOpacity || '.1',\n        fill: style.fill || color || 'slategray',\n        pointerEvents: 'auto'\n      };\n\n      var tooltips = points.map(function (p, i) {\n        return _react2.default.createElement('circle', {\n          key: i,\n          cx: p.x,\n          cy: p.y,\n          r: 2,\n          style: fillStyle,\n          onMouseEnter: function onMouseEnter(e) {\n            return onMouseMove('enter', data[i], p);\n          },\n          onClick: function onClick(e) {\n            return onMouseMove('click', data[i], p);\n          }\n        });\n      });\n\n      return _react2.default.createElement(\n        'g',\n        null,\n        tooltips,\n        _react2.default.createElement('polyline', { points: fillPoints.join(' '), style: fillStyle }),\n        _react2.default.createElement('polyline', { points: linePoints.join(' '), style: lineStyle })\n      );\n    }\n  }]);\n\n  return SparklinesLine;\n}(_react2.default.Component);\n\nSparklinesLine.propTypes = {\n  color: _propTypes2.default.string,\n  style: _propTypes2.default.object\n};\nSparklinesLine.defaultProps = {\n  style: {},\n  onMouseMove: function onMouseMove() {}\n};\nexports.default = SparklinesLine;\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesCurve = function (_React$Component) {\n    _inherits(SparklinesCurve, _React$Component);\n\n    function SparklinesCurve() {\n        _classCallCheck(this, SparklinesCurve);\n\n        return _possibleConstructorReturn(this, (SparklinesCurve.__proto__ || Object.getPrototypeOf(SparklinesCurve)).apply(this, arguments));\n    }\n\n    _createClass(SparklinesCurve, [{\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                width = _props.width,\n                height = _props.height,\n                margin = _props.margin,\n                color = _props.color,\n                style = _props.style,\n                _props$divisor = _props.divisor,\n                divisor = _props$divisor === undefined ? 0.25 : _props$divisor;\n\n            var prev = void 0;\n            var curve = function curve(p) {\n                var res = void 0;\n                if (!prev) {\n                    res = [p.x, p.y];\n                } else {\n                    var len = (p.x - prev.x) * divisor;\n                    res = [\"C\",\n                    //x1\n                    prev.x + len,\n                    //y1\n                    prev.y,\n                    //x2,\n                    p.x - len,\n                    //y2,\n                    p.y,\n                    //x,\n                    p.x,\n                    //y\n                    p.y];\n                }\n                prev = p;\n                return res;\n            };\n            var linePoints = points.map(function (p) {\n                return curve(p);\n            }).reduce(function (a, b) {\n                return a.concat(b);\n            });\n            var closePolyPoints = [\"L\" + points[points.length - 1].x, height - margin, margin, height - margin, margin, points[0].y];\n            var fillPoints = linePoints.concat(closePolyPoints);\n\n            var lineStyle = {\n                stroke: color || style.stroke || 'slategray',\n                strokeWidth: style.strokeWidth || '1',\n                strokeLinejoin: style.strokeLinejoin || 'round',\n                strokeLinecap: style.strokeLinecap || 'round',\n                fill: 'none'\n            };\n            var fillStyle = {\n                stroke: style.stroke || 'none',\n                strokeWidth: '0',\n                fillOpacity: style.fillOpacity || '.1',\n                fill: style.fill || color || 'slategray'\n            };\n\n            return _react2.default.createElement(\n                'g',\n                null,\n                _react2.default.createElement('path', { d: \"M\" + fillPoints.join(' '), style: fillStyle }),\n                _react2.default.createElement('path', { d: \"M\" + linePoints.join(' '), style: lineStyle })\n            );\n        }\n    }]);\n\n    return SparklinesCurve;\n}(_react2.default.Component);\n\nSparklinesCurve.propTypes = {\n    color: _propTypes2.default.string,\n    style: _propTypes2.default.object\n};\nSparklinesCurve.defaultProps = {\n    style: {}\n};\nexports.default = SparklinesCurve;\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesBars = function (_React$Component) {\n  _inherits(SparklinesBars, _React$Component);\n\n  function SparklinesBars() {\n    _classCallCheck(this, SparklinesBars);\n\n    return _possibleConstructorReturn(this, (SparklinesBars.__proto__ || Object.getPrototypeOf(SparklinesBars)).apply(this, arguments));\n  }\n\n  _createClass(SparklinesBars, [{\n    key: 'render',\n    value: function render() {\n      var _this2 = this;\n\n      var _props = this.props,\n          points = _props.points,\n          height = _props.height,\n          style = _props.style,\n          barWidth = _props.barWidth,\n          margin = _props.margin,\n          onMouseMove = _props.onMouseMove;\n\n      var strokeWidth = 1 * (style && style.strokeWidth || 0);\n      var marginWidth = margin ? 2 * margin : 0;\n      var width = barWidth || (points && points.length >= 2 ? Math.max(0, points[1].x - points[0].x - strokeWidth - marginWidth) : 0);\n\n      return _react2.default.createElement(\n        'g',\n        { transform: 'scale(1,-1)' },\n        points.map(function (p, i) {\n          return _react2.default.createElement('rect', {\n            key: i,\n            x: p.x - (width + strokeWidth) / 2,\n            y: -height,\n            width: width,\n            height: Math.max(0, height - p.y),\n            style: style,\n            onMouseMove: onMouseMove && onMouseMove.bind(_this2, p)\n          });\n        })\n      );\n    }\n  }]);\n\n  return SparklinesBars;\n}(_react2.default.Component);\n\nSparklinesBars.propTypes = {\n  points: _propTypes2.default.arrayOf(_propTypes2.default.object),\n  height: _propTypes2.default.number,\n  style: _propTypes2.default.object,\n  barWidth: _propTypes2.default.number,\n  margin: _propTypes2.default.number,\n  onMouseMove: _propTypes2.default.func\n};\nSparklinesBars.defaultProps = {\n  style: { fill: 'slategray' }\n};\nexports.default = SparklinesBars;\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesSpots = function (_React$Component) {\n    _inherits(SparklinesSpots, _React$Component);\n\n    function SparklinesSpots() {\n        _classCallCheck(this, SparklinesSpots);\n\n        return _possibleConstructorReturn(this, (SparklinesSpots.__proto__ || Object.getPrototypeOf(SparklinesSpots)).apply(this, arguments));\n    }\n\n    _createClass(SparklinesSpots, [{\n        key: 'lastDirection',\n        value: function lastDirection(points) {\n\n            Math.sign = Math.sign || function (x) {\n                return x > 0 ? 1 : -1;\n            };\n\n            return points.length < 2 ? 0 : Math.sign(points[points.length - 2].y - points[points.length - 1].y);\n        }\n    }, {\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                width = _props.width,\n                height = _props.height,\n                size = _props.size,\n                style = _props.style,\n                spotColors = _props.spotColors;\n\n\n            var startSpot = _react2.default.createElement('circle', {\n                cx: points[0].x,\n                cy: points[0].y,\n                r: size,\n                style: style });\n\n            var endSpot = _react2.default.createElement('circle', {\n                cx: points[points.length - 1].x,\n                cy: points[points.length - 1].y,\n                r: size,\n                style: style || { fill: spotColors[this.lastDirection(points)] } });\n\n            return _react2.default.createElement(\n                'g',\n                null,\n                style && startSpot,\n                endSpot\n            );\n        }\n    }]);\n\n    return SparklinesSpots;\n}(_react2.default.Component);\n\nSparklinesSpots.propTypes = {\n    size: _propTypes2.default.number,\n    style: _propTypes2.default.object,\n    spotColors: _propTypes2.default.object\n};\nSparklinesSpots.defaultProps = {\n    size: 2,\n    spotColors: {\n        '-1': 'red',\n        '0': 'black',\n        '1': 'green'\n    }\n};\nexports.default = SparklinesSpots;\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _dataProcessing = __webpack_require__(23);\n\nvar dataProcessing = _interopRequireWildcard(_dataProcessing);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesReferenceLine = function (_React$Component) {\n    _inherits(SparklinesReferenceLine, _React$Component);\n\n    function SparklinesReferenceLine() {\n        _classCallCheck(this, SparklinesReferenceLine);\n\n        return _possibleConstructorReturn(this, (SparklinesReferenceLine.__proto__ || Object.getPrototypeOf(SparklinesReferenceLine)).apply(this, arguments));\n    }\n\n    _createClass(SparklinesReferenceLine, [{\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                margin = _props.margin,\n                type = _props.type,\n                style = _props.style,\n                value = _props.value;\n\n\n            var ypoints = points.map(function (p) {\n                return p.y;\n            });\n            var y = type == 'custom' ? value : dataProcessing[type](ypoints);\n\n            return _react2.default.createElement('line', {\n                x1: points[0].x, y1: y + margin,\n                x2: points[points.length - 1].x, y2: y + margin,\n                style: style });\n        }\n    }]);\n\n    return SparklinesReferenceLine;\n}(_react2.default.Component);\n\nSparklinesReferenceLine.propTypes = {\n    type: _propTypes2.default.oneOf(['max', 'min', 'mean', 'avg', 'median', 'custom']),\n    value: _propTypes2.default.number,\n    style: _propTypes2.default.object\n};\nSparklinesReferenceLine.defaultProps = {\n    type: 'mean',\n    style: { stroke: 'red', strokeOpacity: .75, strokeDasharray: '2, 2' }\n};\nexports.default = SparklinesReferenceLine;\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.variance = exports.stdev = exports.median = exports.midRange = exports.avg = exports.mean = exports.max = exports.min = undefined;\n\nvar _min2 = __webpack_require__(7);\n\nvar _min3 = _interopRequireDefault(_min2);\n\nvar _mean2 = __webpack_require__(3);\n\nvar _mean3 = _interopRequireDefault(_mean2);\n\nvar _midRange2 = __webpack_require__(24);\n\nvar _midRange3 = _interopRequireDefault(_midRange2);\n\nvar _median2 = __webpack_require__(25);\n\nvar _median3 = _interopRequireDefault(_median2);\n\nvar _stdev2 = __webpack_require__(10);\n\nvar _stdev3 = _interopRequireDefault(_stdev2);\n\nvar _variance2 = __webpack_require__(26);\n\nvar _variance3 = _interopRequireDefault(_variance2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.min = _min3.default;\nexports.max = _min3.default;\nexports.mean = _mean3.default;\nexports.avg = _mean3.default;\nexports.midRange = _midRange3.default;\nexports.median = _median3.default;\nexports.stdev = _stdev3.default;\nexports.variance = _variance3.default;\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _min = __webpack_require__(7);\n\nvar _min2 = _interopRequireDefault(_min);\n\nvar _max = __webpack_require__(9);\n\nvar _max2 = _interopRequireDefault(_max);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (data) {\n    return (0, _max2.default)(data) - (0, _min2.default)(data) / 2;\n};\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nexports.default = function (data) {\n    return data.sort(function (a, b) {\n        return a - b;\n    })[Math.floor(data.length / 2)];\n};\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _mean = __webpack_require__(3);\n\nvar _mean2 = _interopRequireDefault(_mean);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (data) {\n    var dataMean = (0, _mean2.default)(data);\n    var sq = data.map(function (n) {\n        return Math.pow(n - dataMean, 2);\n    });\n    return (0, _mean2.default)(sq);\n};\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _propTypes = __webpack_require__(0);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _mean = __webpack_require__(3);\n\nvar _mean2 = _interopRequireDefault(_mean);\n\nvar _stdev = __webpack_require__(10);\n\nvar _stdev2 = _interopRequireDefault(_stdev);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SparklinesNormalBand = function (_React$Component) {\n    _inherits(SparklinesNormalBand, _React$Component);\n\n    function SparklinesNormalBand() {\n        _classCallCheck(this, SparklinesNormalBand);\n\n        return _possibleConstructorReturn(this, (SparklinesNormalBand.__proto__ || Object.getPrototypeOf(SparklinesNormalBand)).apply(this, arguments));\n    }\n\n    _createClass(SparklinesNormalBand, [{\n        key: 'render',\n        value: function render() {\n            var _props = this.props,\n                points = _props.points,\n                margin = _props.margin,\n                style = _props.style;\n\n\n            var ypoints = points.map(function (p) {\n                return p.y;\n            });\n            var dataMean = (0, _mean2.default)(ypoints);\n            var dataStdev = (0, _stdev2.default)(ypoints);\n\n            return _react2.default.createElement('rect', { x: points[0].x, y: dataMean - dataStdev + margin,\n                width: points[points.length - 1].x - points[0].x, height: _stdev2.default * 2,\n                style: style });\n        }\n    }]);\n\n    return SparklinesNormalBand;\n}(_react2.default.Component);\n\nSparklinesNormalBand.propTypes = {\n    style: _propTypes2.default.object\n};\nSparklinesNormalBand.defaultProps = {\n    style: { fill: 'red', fillOpacity: .1 }\n};\nexports.default = SparklinesNormalBand;\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n\nvar _min = __webpack_require__(7);\n\nvar _min2 = _interopRequireDefault(_min);\n\nvar _max = __webpack_require__(9);\n\nvar _max2 = _interopRequireDefault(_max);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (_ref) {\n    var data = _ref.data,\n        limit = _ref.limit,\n        _ref$width = _ref.width,\n        width = _ref$width === undefined ? 1 : _ref$width,\n        _ref$height = _ref.height,\n        height = _ref$height === undefined ? 1 : _ref$height,\n        _ref$margin = _ref.margin,\n        margin = _ref$margin === undefined ? 0 : _ref$margin,\n        _ref$max = _ref.max,\n        max = _ref$max === undefined ? (0, _max2.default)(data) : _ref$max,\n        _ref$min = _ref.min,\n        min = _ref$min === undefined ? (0, _min2.default)(data) : _ref$min;\n\n\n    var len = data.length;\n\n    if (limit && limit < len) {\n        data = data.slice(len - limit);\n    }\n\n    var vfactor = (height - margin * 2) / (max - min || 2);\n    var hfactor = (width - margin * 2) / ((limit || len) - (len > 1 ? 1 : 0));\n\n    return data.map(function (d, i) {\n        return {\n            x: i * hfactor + margin,\n            y: (max === min ? 1 : max - d) * vfactor + margin\n        };\n    });\n};\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// ./node_modules/react-sparklines/build/index.js"],"sourceRoot":""}
\ No newline at end of file