1 line
8 KiB
Plaintext
1 line
8 KiB
Plaintext
{"version":3,"sources":["webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/account_timeline/index.js"],"names":["emptyList","ImmutableList","AccountTimeline","connect","state","_ref","accountId","params","_ref$withReplies","withReplies","path","isAccount","getIn","statusIds","featuredStatusIds","isLoading","hasMore","blockedBy","maxId","_this","props","dispatch","expandAccountTimeline","componentWillMount","_this$props","this","fetchAccount","fetchAccountIdentityProofs","expandAccountFeaturedTimeline","componentWillReceiveProps","nextProps","render","_this$props2","shouldUpdateScroll","Object","_babel_runtime_helpers_esm_jsx__WEBPACK_IMPORTED_MODULE_0__","_ui_components_column__WEBPACK_IMPORTED_MODULE_12__","mastodon_components_missing_indicator__WEBPACK_IMPORTED_MODULE_19__","_components_loading_indicator__WEBPACK_IMPORTED_MODULE_11__","emptyMessage","react_intl__WEBPACK_IMPORTED_MODULE_17__","id","defaultMessage","_components_column_back_button__WEBPACK_IMPORTED_MODULE_14__","_components_status_list__WEBPACK_IMPORTED_MODULE_10__","prepend","_containers_header_container__WEBPACK_IMPORTED_MODULE_13__","alwaysPrepend","scrollKey","onLoadMore","handleLoadMore","ImmutablePureComponent","PropTypes","object","isRequired","func","ImmutablePropTypes","list","bool"],"mappings":"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","file":"features/account_timeline.js","sourcesContent":["import React from 'react';\nimport { connect } from 'react-redux';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport { fetchAccount } from '../../actions/accounts';\nimport { expandAccountFeaturedTimeline, expandAccountTimeline } from '../../actions/timelines';\nimport StatusList from '../../components/status_list';\nimport LoadingIndicator from '../../components/loading_indicator';\nimport Column from '../ui/components/column';\nimport HeaderContainer from './containers/header_container';\nimport ColumnBackButton from '../../components/column_back_button';\nimport { List as ImmutableList } from 'immutable';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { FormattedMessage } from 'react-intl';\nimport { fetchAccountIdentityProofs } from '../../actions/identity_proofs';\nimport MissingIndicator from 'mastodon/components/missing_indicator';\n\nconst emptyList = ImmutableList();\n\nconst mapStateToProps = (state, { params: { accountId }, withReplies = false }) => {\n const path = withReplies ? `${accountId}:with_replies` : accountId;\n\n return {\n isAccount: !!state.getIn(['accounts', accountId]),\n statusIds: state.getIn(['timelines', `account:${path}`, 'items'], emptyList),\n featuredStatusIds: withReplies ? ImmutableList() : state.getIn(['timelines', `account:${accountId}:pinned`, 'items'], emptyList),\n isLoading: state.getIn(['timelines', `account:${path}`, 'isLoading']),\n hasMore: state.getIn(['timelines', `account:${path}`, 'hasMore']),\n blockedBy: state.getIn(['relationships', accountId, 'blocked_by'], false),\n };\n};\n\nexport default @connect(mapStateToProps)\nclass AccountTimeline extends ImmutablePureComponent {\n\n static propTypes = {\n params: PropTypes.object.isRequired,\n dispatch: PropTypes.func.isRequired,\n shouldUpdateScroll: PropTypes.func,\n statusIds: ImmutablePropTypes.list,\n featuredStatusIds: ImmutablePropTypes.list,\n isLoading: PropTypes.bool,\n hasMore: PropTypes.bool,\n withReplies: PropTypes.bool,\n blockedBy: PropTypes.bool,\n isAccount: PropTypes.bool,\n };\n\n componentWillMount () {\n const { params: { accountId }, withReplies } = this.props;\n\n this.props.dispatch(fetchAccount(accountId));\n this.props.dispatch(fetchAccountIdentityProofs(accountId));\n\n if (!withReplies) {\n this.props.dispatch(expandAccountFeaturedTimeline(accountId));\n }\n\n this.props.dispatch(expandAccountTimeline(accountId, { withReplies }));\n }\n\n componentWillReceiveProps (nextProps) {\n if ((nextProps.params.accountId !== this.props.params.accountId && nextProps.params.accountId) || nextProps.withReplies !== this.props.withReplies) {\n this.props.dispatch(fetchAccount(nextProps.params.accountId));\n this.props.dispatch(fetchAccountIdentityProofs(nextProps.params.accountId));\n\n if (!nextProps.withReplies) {\n this.props.dispatch(expandAccountFeaturedTimeline(nextProps.params.accountId));\n }\n\n this.props.dispatch(expandAccountTimeline(nextProps.params.accountId, { withReplies: nextProps.params.withReplies }));\n }\n }\n\n handleLoadMore = maxId => {\n this.props.dispatch(expandAccountTimeline(this.props.params.accountId, { maxId, withReplies: this.props.withReplies }));\n }\n\n render () {\n const { shouldUpdateScroll, statusIds, featuredStatusIds, isLoading, hasMore, blockedBy, isAccount } = this.props;\n\n if (!isAccount) {\n return (\n <Column>\n <MissingIndicator />\n </Column>\n );\n }\n\n if (!statusIds && isLoading) {\n return (\n <Column>\n <LoadingIndicator />\n </Column>\n );\n }\n\n const emptyMessage = blockedBy ? <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' /> : <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;\n\n return (\n <Column>\n <ColumnBackButton />\n\n <StatusList\n prepend={<HeaderContainer accountId={this.props.params.accountId} />}\n alwaysPrepend\n scrollKey='account_timeline'\n statusIds={blockedBy ? emptyList : statusIds}\n featuredStatusIds={featuredStatusIds}\n isLoading={isLoading}\n hasMore={hasMore}\n onLoadMore={this.handleLoadMore}\n shouldUpdateScroll={shouldUpdateScroll}\n emptyMessage={emptyMessage}\n />\n </Column>\n );\n }\n\n}\n"],"sourceRoot":""} |