1 line
5.5 KiB
Plaintext
1 line
5.5 KiB
Plaintext
{"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","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":"oTAaMA,EAAWC,YAAe,CAC9BC,QAAQ,CAAD,sDAWHC,EAFUC,kBANQ,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,W,GAIvDG,a,8LAiBa,WAAO,IAAD,EACe,EAAKC,MAA5BC,EADQ,EACRA,SAAUC,EADF,EACEA,SAGhBA,EADED,EACOE,YAAaF,GAEbG,YAAU,aAAc,O,wCAIxB,SAACC,GAAS,IAAD,EACW,EAAKL,MAA5BC,EADY,EACZA,UACRC,EAFoB,EACFA,UACTI,YAAWL,EAAUI,M,+CAGZ,WAClB,EAAKE,OAAOC,c,oCAGL,SAAAC,GACP,EAAKF,OAASE,I,4CAGC,IAAS,WACxB,EAAKT,MAAME,SAASQ,gBACnB,IAAK,CAAEC,SAAS,K,8CA7BnBC,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,IAAKT,KAAKU,OAAQC,KAAK,aAAaC,MAAOT,EAAKU,cAAcrC,EAASE,UAC7E,YAAC,IAAD,CACEoC,KAAK,OACLC,MAAOZ,EAAKU,cAAcrC,EAASE,SACnCsC,MAAOhB,KAAKiB,UACZC,OAAQlB,KAAKmB,WACbC,QAASpB,KAAKqB,kBACdhB,OAAQA,EACRD,YAAaA,EACbkB,gBAAc,IAGhB,YAAC,IAAD,CACEC,aAAclB,EACdvB,UAAWA,EACX0C,UAAS,uBAAyBpC,EAClCH,QAASA,EACTD,UAAWA,EACXyC,WAAYzB,KAAK0B,eACjBpB,aAAcA,M,GArECqB,K,0BAEJ,CACjBtC,SAAUuC,IAAUC,KAAKC,WACzBhD,UAAWiD,IAAmBC,KAAKF,WACnC3B,KAAMyB,IAAUK,OAAOH,WACvB1C,SAAUwC,IAAUM,OACpB9B,YAAawB,IAAUO,KACvBlD,QAAS2C,IAAUO,KACnBnD,UAAW4C,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 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 />\n </Column>\n );\n }\n\n}\n"],"sourceRoot":""} |