favourited_statuses.js.map (5721B)
- {"version":3,"sources":["webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/features/favourited_statuses/index.js"],"names":["messages","defineMessages","heading","Favourites","connect","state","statusIds","getIn","isLoading","hasMore","injectIntl","props","columnId","dispatch","removeColumn","addColumn","dir","moveColumn","column","scrollTop","c","expandFavouritedStatuses","leading","componentWillMount","this","fetchFavouritedStatuses","render","intl","multiColumn","pinned","emptyMessage","id","defaultMessage","bindToDocument","ref","setRef","name","label","formatMessage","icon","title","onPin","handlePin","onMove","handleMove","onClick","handleHeaderClick","showBackButton","trackScroll","scrollKey","onLoadMore","handleLoadMore","ImmutablePureComponent","PropTypes","func","isRequired","ImmutablePropTypes","list","object","string","bool"],"mappings":"mUAaA,IAAMA,EAAWC,YAAe,CAC9BC,QAAQ,CAAD,sDAWHC,EAFUC,mBANQ,SAAAC,GAAK,MAAK,CAChCC,UAAWD,EAAME,MAAM,CAAC,eAAgB,aAAc,UACtDC,UAAWH,EAAME,MAAM,CAAC,eAAgB,aAAc,cAAc,GACpEE,UAAWJ,EAAME,MAAM,CAAC,eAAgB,aAAc,Y,GAIvDG,a,0NAiBa,WAAO,IAAD,EACe,EAAKC,MAA5BC,EADQ,EACRA,SAAUC,EADF,EACEA,SAGhBA,EADED,EACOE,YAAaF,GAEbG,YAAU,aAAc,Q,yCAIxB,SAACC,GAAS,IAAD,EACW,EAAKL,MAA5BC,EADY,EACZA,UACRC,EAFoB,EACFA,UACTI,YAAWL,EAAUI,O,gDAGZ,WAClB,EAAKE,OAAOC,e,qCAGL,SAAAC,GACP,EAAKF,OAASE,K,4CAGC,KAAS,WACxB,EAAKT,MAAME,SAASQ,iBACnB,IAAK,CAAEC,SAAS,K,6BA7BnBC,mBAAA,WACEC,KAAKb,MAAME,SAASY,gB,EA8BtBC,OAAA,WAAW,IAAD,EAC+DF,KAAKb,MAApEgB,EADA,EACAA,KAAMrB,EADN,EACMA,UAAWM,EADjB,EACiBA,SAAUgB,EAD3B,EAC2BA,YAAanB,EADxC,EACwCA,QAASD,EADjD,EACiDA,UACnDqB,IAAWjB,EAEXkB,EAAe,YAAC,IAAD,CAAkBC,GAAG,mCAAmCC,eAAe,0FAE5F,OACE,kBAAC,IAAD,CAAQC,gBAAiBL,EAAaM,IAAKV,KAAKW,OAAQC,KAAK,aAAaC,MAAOV,EAAKW,cAActC,EAASE,UAC3G,YAAC,IAAD,CACEqC,KAAK,OACLC,MAAOb,EAAKW,cAActC,EAASE,SACnCuC,MAAOjB,KAAKkB,UACZC,OAAQnB,KAAKoB,WACbC,QAASrB,KAAKsB,kBACdjB,OAAQA,EACRD,YAAaA,EACbmB,gBAAc,IAGhB,YAAC,IAAD,CACEC,aAAcnB,EACdvB,UAAWA,EACX2C,UAAS,uBAAyBrC,EAClCH,QAASA,EACTD,UAAWA,EACX0C,WAAY1B,KAAK2B,eACjBrB,aAAcA,EACdG,gBAAiBL,M,GAtEFwB,K,0BAEJ,CACjBvC,SAAUwC,IAAUC,KAAKC,WACzBjD,UAAWkD,IAAmBC,KAAKF,WACnC5B,KAAM0B,IAAUK,OAAOH,WACvB3C,SAAUyC,IAAUM,OACpB/B,YAAayB,IAAUO,KACvBnD,QAAS4C,IAAUO,KACnBpD,UAAW6C,IAAUO,O","file":"flavours/glitch/async/favourited_statuses.js","sourcesContent":["import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { debounce } from 'lodash';\nimport { fetchFavouritedStatuses, expandFavouritedStatuses } from 'flavours/glitch/actions/favourites';\nimport Column from 'flavours/glitch/features/ui/components/column';\nimport ColumnHeader from 'flavours/glitch/components/column_header';\nimport { addColumn, removeColumn, moveColumn } from 'flavours/glitch/actions/columns';\nimport StatusList from 'flavours/glitch/components/status_list';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nconst messages = defineMessages({\n heading: { id: 'column.favourites', defaultMessage: 'Favourites' },\n});\n\nconst mapStateToProps = state => ({\n statusIds: state.getIn(['status_lists', 'favourites', 'items']),\n isLoading: state.getIn(['status_lists', 'favourites', 'isLoading'], true),\n hasMore: !!state.getIn(['status_lists', 'favourites', 'next']),\n});\n\nexport default @connect(mapStateToProps)\n@injectIntl\nclass Favourites extends ImmutablePureComponent {\n\n static propTypes = {\n dispatch: PropTypes.func.isRequired,\n statusIds: ImmutablePropTypes.list.isRequired,\n intl: PropTypes.object.isRequired,\n columnId: PropTypes.string,\n multiColumn: PropTypes.bool,\n hasMore: PropTypes.bool,\n isLoading: PropTypes.bool,\n };\n\n componentWillMount () {\n this.props.dispatch(fetchFavouritedStatuses());\n }\n\n handlePin = () => {\n const { columnId, dispatch } = this.props;\n\n if (columnId) {\n dispatch(removeColumn(columnId));\n } else {\n dispatch(addColumn('FAVOURITES', {}));\n }\n }\n\n handleMove = (dir) => {\n const { columnId, dispatch } = this.props;\n dispatch(moveColumn(columnId, dir));\n }\n\n handleHeaderClick = () => {\n this.column.scrollTop();\n }\n\n setRef = c => {\n this.column = c;\n }\n\n handleLoadMore = debounce(() => {\n this.props.dispatch(expandFavouritedStatuses());\n }, 300, { leading: true })\n\n render () {\n const { intl, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;\n const pinned = !!columnId;\n\n const emptyMessage = <FormattedMessage id='empty_column.favourited_statuses' defaultMessage=\"You don't have any favourite toots yet. When you favourite one, it will show up here.\" />;\n\n return (\n <Column bindToDocument={!multiColumn} ref={this.setRef} name='favourites' label={intl.formatMessage(messages.heading)}>\n <ColumnHeader\n icon='star'\n title={intl.formatMessage(messages.heading)}\n onPin={this.handlePin}\n onMove={this.handleMove}\n onClick={this.handleHeaderClick}\n pinned={pinned}\n multiColumn={multiColumn}\n showBackButton\n />\n\n <StatusList\n trackScroll={!pinned}\n statusIds={statusIds}\n scrollKey={`favourited_statuses-${columnId}`}\n hasMore={hasMore}\n isLoading={isLoading}\n onLoadMore={this.handleLoadMore}\n emptyMessage={emptyMessage}\n bindToDocument={!multiColumn}\n />\n </Column>\n );\n }\n\n}\n"],"sourceRoot":""}