{"version":3,"sources":["webpack:///app/javascript/opt/mastodon/app/javascript/flavours/glitch/features/getting_started/index.js"],"names":["messages","defineMessages","heading","home_timeline","notifications","public_timeline","navigation_subheading","settings_subheading","community_timeline","explore","direct","bookmarks","preferences","settings","follow_requests","lists","keyboard_shortcuts","lists_subheading","misc","menu","badgeDisplay","number","limit","GettingStarted","connect","getOrderedLists","createSelector","state","get","toList","filter","item","sort","a","b","localeCompare","myAccount","getIn","me","columns","unreadFollowRequests","ImmutableList","size","unreadNotifications","dispatch","fetchFollowRequests","fetchLists","openSettings","openModal","injectIntl","ImmutablePureComponent","componentWillMount","this","props","componentDidMount","signedIn","context","identity","render","intl","multiColumn","navItems","listItems","find","push","icon","text","formatMessage","to","badge","showTrends","concat","list","map","bindToDocument","name","label","hideHeadingOnMobile","className","account","Fragment","undefined","preferencesLink","href","onClick","content","contextTypes","router","PropTypes","object","isRequired","propTypes","ImmutablePropTypes","bool","func"],"mappings":"+VAqBA,MAAMA,EAAWC,YAAe,CAC9BC,QAAQ,CAAD,+DACPC,cAAc,CAAD,0CACbC,cAAc,CAAD,4DACbC,gBAAgB,CAAD,yEACfC,sBAAsB,CAAD,+DACrBC,oBAAoB,CAAD,2DACnBC,mBAAmB,CAAD,wEAClBC,QAAQ,CAAD,sDACPC,OAAO,CAAD,6DACNC,UAAU,CAAD,0DACTC,YAAY,CAAD,8DACXC,SAAS,CAAD,gEACRC,gBAAgB,CAAD,sEACfC,MAAM,CAAD,kDACLC,mBAAmB,CAAD,4EAClBD,MAAM,CAAD,kDACLE,iBAAiB,CAAD,qDAChBC,KAAK,CAAD,gDACJC,KAAK,CAAD,iEA6BAC,EAAe,CAACC,EAAQC,IACb,IAAXD,OACF,EACSC,GAASD,GAAUC,EACpB,GAAEA,KAEHD,EAIoD,IAIxDE,EAFUC,mBAtCW,KAC1B,MAAMC,EAAkBC,YAAe,CAACC,GAASA,EAAMC,IAAI,WAAWb,GAC/DA,EAIEA,EAAMc,SAASC,QAAOC,KAAUA,IAAMC,MAAK,CAACC,EAAGC,IAAMD,EAAEL,IAAI,SAASO,cAAcD,EAAEN,IAAI,YAHtFb,IAcX,OARwBY,IAAK,CAC3BZ,MAAOU,EAAgBE,GACvBS,UAAWT,EAAMU,MAAM,CAAC,WAAYC,MACpCC,QAASZ,EAAMU,MAAM,CAAC,WAAY,YAClCG,qBAAsBb,EAAMU,MAAM,CAAC,aAAc,kBAAmB,SAAUI,kBAAiBC,KAC/FC,oBAAqBhB,EAAMU,MAAM,CAAC,gBAAiB,gBAM5BO,IAAQ,CACjCC,oBAAqB,IAAMD,EAASC,eACpCC,WAAY,IAAMF,EAASE,eAC3BC,aAAc,IAAMH,EAASI,YAAU,WAAY,QAeY,GAC/DC,cAAU,EADI,cAEcC,IAoB5BC,qBACEC,KAAKC,MAAMP,aAGbQ,oBACE,MAAM,oBAAET,GAAwBO,KAAKC,OAC/B,SAAEE,GAAaH,KAAKI,QAAQC,SAE7BF,GAILV,IAGFa,SACE,MAAM,KAAEC,EAAI,UAAEvB,EAAS,QAAEG,EAAO,YAAEqB,EAAW,qBAAEpB,EAAoB,oBAAEG,EAAmB,MAAE5B,EAAK,aAAEgC,GAAiBK,KAAKC,OACjH,SAAEE,GAAaH,KAAKI,QAAQC,SAE5BI,EAAW,GACjB,IAAIC,EAAY,GAiDhB,OA/CIF,IACEL,IAAahB,EAAQwB,MAAKhC,GAA2B,SAAnBA,EAAKH,IAAI,SAC7CiC,EAASG,KAAK,YAAC,IAAU,CAAYC,KAAK,OAAOC,KAAMP,EAAKQ,cAAcnE,EAASG,eAAgBiE,GAAG,SAAxE,SAG3B7B,EAAQwB,MAAKhC,GAA2B,kBAAnBA,EAAKH,IAAI,SACjCiC,EAASG,KAAK,YAAC,IAAU,CAAqBC,KAAK,OAAOC,KAAMP,EAAKQ,cAAcnE,EAASI,eAAgBiE,MAAOjD,EAAauB,GAAsByB,GAAG,kBAA3H,kBAG3B7B,EAAQwB,MAAKhC,GAA2B,cAAnBA,EAAKH,IAAI,SACjCiC,EAASG,KAAK,YAAC,IAAU,CAA0BC,KAAK,QAAQC,KAAMP,EAAKQ,cAAcnE,EAASQ,oBAAqB4D,GAAG,iBAA5F,uBAG3B7B,EAAQwB,MAAKhC,GAA2B,WAAnBA,EAAKH,IAAI,SACjCiC,EAASG,KAAK,YAAC,IAAU,CAAuBC,KAAK,QAAQC,KAAMP,EAAKQ,cAAcnE,EAASK,iBAAkB+D,GAAG,WAAtF,qBAI9BE,KACFT,EAASG,KAAK,YAAC,IAAU,CAAeC,KAAK,UAAUC,KAAMP,EAAKQ,cAAcnE,EAASS,SAAU2D,GAAG,YAAxE,YAG5Bb,IACGK,GAAgBrB,EAAQwB,MAAKhC,GAA2B,WAAnBA,EAAKH,IAAI,SACjDiC,EAASG,KAAK,YAAC,IAAU,CAAqBC,KAAK,WAAWC,KAAMP,EAAKQ,cAAcnE,EAASU,QAAS0D,GAAG,kBAA9E,kBAG3BR,GAAgBrB,EAAQwB,MAAKhC,GAA2B,cAAnBA,EAAKH,IAAI,SACjDiC,EAASG,KAAK,YAAC,IAAU,CAAiBC,KAAK,WAAWC,KAAMP,EAAKQ,cAAcnE,EAASW,WAAYyD,GAAG,cAA7E,eAG5BhC,EAAUR,IAAI,WAAaY,EAAuB,IACpDqB,EAASG,KAAK,YAAC,IAAU,CAAuBC,KAAK,YAAYC,KAAMP,EAAKQ,cAAcnE,EAASc,iBAAkBuD,MAAOjD,EAAaoB,EAAsB,IAAK4B,GAAG,oBAAzI,oBAGhCP,EAASG,KAAK,YAAC,IAAU,CAAuBC,KAAK,aAAaC,KAAMP,EAAKQ,cAAcnE,EAASkB,MAAOkD,GAAG,yBAAhF,oBAE9BN,EAAYA,EAAUS,OAAO,CAC3B,qBAAS,IACP,YAAC,IAAU,CAAaN,KAAK,OAAOC,KAAMP,EAAKQ,cAAcnE,EAASe,OAAQqD,GAAG,UAAjE,SACfrD,EAAMe,QAAO0C,IAASjC,EAAQwB,MAAKhC,GAA2B,SAAnBA,EAAKH,IAAI,OAAoBG,EAAKM,MAAM,CAAC,SAAU,SAAWmC,EAAK5C,IAAI,UAAQ6C,KAAID,GAC7H,YAAC,IAAU,CAAgCJ,GAAK,UAASI,EAAK5C,IAAI,QAASqC,KAAK,UAAUC,KAAMM,EAAK5C,IAAI,UAAvF,QAAO4C,EAAK5C,IAAI,eAOxC,YAAC,IAAM,CAAC8C,gBAAiBd,EAAae,KAAK,kBAAkBV,KAAK,WAAW/D,QAASyD,EAAKQ,cAAcnE,EAASE,SAAU0E,MAAOjB,EAAKQ,cAAcnE,EAASmB,MAAO0D,qBAAmB,UACvL,mBAAKC,UAAU,yCAAkC,EAC/C,mBAAKA,UAAU,iCAA0B,GACrClB,GAAeL,GAAY,YAAC,IAAa,CAACwB,QAAS3C,IACpDwB,GAAe,YAAC,IAAgB,CAACM,KAAMP,EAAKQ,cAAcnE,EAASM,yBACnEuD,EACAN,GACC,YAAC,IAAMyB,SAAQ,UACb,YAAC,IAAgB,CAACd,KAAMP,EAAKQ,cAAcnE,EAASiB,oBACnD6C,EACD,YAAC,IAAgB,CAACI,KAAMP,EAAKQ,cAAcnE,EAASO,4BAC9B0E,IAApBC,KAAiC,YAAC,IAAU,CAACjB,KAAK,MAAMC,KAAMP,EAAKQ,cAAcnE,EAASY,aAAcuE,KAAMD,MAChH,YAAC,IAAU,CAACjB,KAAK,OAAOC,KAAMP,EAAKQ,cAAcnE,EAASa,UAAWuE,QAASrC,MAKpF,YAAC,IAAU,KAGZa,GAAeU,KAAc,YAAC,IAAe,IAE9C,YAAC,IAAM,UACL,8BAAQX,EAAKQ,cAAcnE,EAASmB,OACpC,oBAAMwD,KAAK,SAASU,QAAQ,iBAhH7BC,aAAe,CACpBC,OAAQC,IAAUC,OAAOC,WACzBjC,SAAU+B,IAAUC,QACrB,EAEME,UAAY,CACjBhC,KAAM6B,IAAUC,OAAOC,WACvBtD,UAAWwD,IAAmBnB,IAC9BlC,QAASqD,IAAmBpB,KAC5BZ,YAAa4B,IAAUK,KACvBhD,oBAAqB2C,IAAUM,KAAKJ,WACpClD,qBAAsBgD,IAAUnE,OAChCsB,oBAAqB6C,IAAUnE,OAC/BN,MAAO6E,IAAmBpB,KAC1B1B,WAAY0C,IAAUM,KAAKJ,WAC3B3C,aAAcyC,IAAUM,KAAKJ,YAlBrB,EAmBT","file":"js/flavours/glitch/async/getting_started-389f44688a11ac04c52f.chunk.js","sourcesContent":["import React from 'react';\nimport Column from 'flavours/glitch/features/ui/components/column';\nimport ColumnLink from 'flavours/glitch/features/ui/components/column_link';\nimport ColumnSubheading from 'flavours/glitch/features/ui/components/column_subheading';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport { connect } from 'react-redux';\nimport { openModal } from 'flavours/glitch/actions/modal';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me, showTrends } from 'flavours/glitch/initial_state';\nimport { fetchFollowRequests } from 'flavours/glitch/actions/accounts';\nimport { List as ImmutableList } from 'immutable';\nimport { createSelector } from 'reselect';\nimport { fetchLists } from 'flavours/glitch/actions/lists';\nimport { preferencesLink } from 'flavours/glitch/utils/backend_links';\nimport NavigationBar from '../compose/components/navigation_bar';\nimport LinkFooter from 'flavours/glitch/features/ui/components/link_footer';\nimport TrendsContainer from './containers/trends_container';\nimport { Helmet } from 'react-helmet';\n\nconst messages = defineMessages({\n heading: { 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_timeline: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },\n navigation_subheading: { id: 'column_subheading.navigation', defaultMessage: 'Navigation' },\n settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },\n community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },\n explore: { id: 'navigation_bar.explore', defaultMessage: 'Explore' },\n direct: { id: 'navigation_bar.direct', defaultMessage: 'Direct messages' },\n bookmarks: { id: 'navigation_bar.bookmarks', defaultMessage: 'Bookmarks' },\n preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },\n settings: { id: 'navigation_bar.app_settings', defaultMessage: 'App settings' },\n follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },\n lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' },\n keyboard_shortcuts: { id: 'navigation_bar.keyboard_shortcuts', defaultMessage: 'Keyboard shortcuts' },\n lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' },\n lists_subheading: { id: 'column_subheading.lists', defaultMessage: 'Lists' },\n misc: { id: 'navigation_bar.misc', defaultMessage: 'Misc' },\n menu: { id: 'getting_started.heading', defaultMessage: 'Getting started' },\n});\n\nconst makeMapStateToProps = () => {\n const getOrderedLists = createSelector([state => state.get('lists')], lists => {\n if (!lists) {\n return lists;\n }\n\n return lists.toList().filter(item => !!item).sort((a, b) => a.get('title').localeCompare(b.get('title')));\n });\n\n const mapStateToProps = state => ({\n lists: getOrderedLists(state),\n myAccount: state.getIn(['accounts', me]),\n columns: state.getIn(['settings', 'columns']),\n unreadFollowRequests: state.getIn(['user_lists', 'follow_requests', 'items'], ImmutableList()).size,\n unreadNotifications: state.getIn(['notifications', 'unread']),\n });\n\n return mapStateToProps;\n};\n\nconst mapDispatchToProps = dispatch => ({\n fetchFollowRequests: () => dispatch(fetchFollowRequests()),\n fetchLists: () => dispatch(fetchLists()),\n openSettings: () => dispatch(openModal('SETTINGS', {})),\n});\n\nconst badgeDisplay = (number, limit) => {\n if (number === 0) {\n return undefined;\n } else if (limit && number >= limit) {\n return `${limit}+`;\n } else {\n return number;\n }\n};\n\nconst NAVIGATION_PANEL_BREAKPOINT = 600 + (285 * 2) + (10 * 2);\n\n export default @connect(makeMapStateToProps, mapDispatchToProps)\n @injectIntl\n class GettingStarted extends ImmutablePureComponent {\n\n static contextTypes = {\n router: PropTypes.object.isRequired,\n identity: PropTypes.object,\n };\n\n static propTypes = {\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map,\n columns: ImmutablePropTypes.list,\n multiColumn: PropTypes.bool,\n fetchFollowRequests: PropTypes.func.isRequired,\n unreadFollowRequests: PropTypes.number,\n unreadNotifications: PropTypes.number,\n lists: ImmutablePropTypes.list,\n fetchLists: PropTypes.func.isRequired,\n openSettings: PropTypes.func.isRequired,\n };\n\n componentWillMount () {\n this.props.fetchLists();\n }\n\n componentDidMount () {\n const { fetchFollowRequests } = this.props;\n const { signedIn } = this.context.identity;\n\n if (!signedIn) {\n return;\n }\n\n fetchFollowRequests();\n }\n\n render () {\n const { intl, myAccount, columns, multiColumn, unreadFollowRequests, unreadNotifications, lists, openSettings } = this.props;\n const { signedIn } = this.context.identity;\n\n const navItems = [];\n let listItems = [];\n\n if (multiColumn) {\n if (signedIn && !columns.find(item => item.get('id') === 'HOME')) {\n navItems.push(