honkoma/priv/static/packs/flavours/glitch/async/report_modal.js.map

1 line
14 KiB
Plaintext

{"version":3,"sources":["webpack:///app/javascript/seagate/sources/git/hacktivis.me/git/mastofe/app/javascript/flavours/glitch/features/report/components/status_check_box.js","webpack:///app/javascript/seagate/sources/git/hacktivis.me/git/mastofe/app/javascript/flavours/glitch/features/report/containers/status_check_box_container.js","webpack:///app/javascript/seagate/sources/git/hacktivis.me/git/mastofe/app/javascript/flavours/glitch/features/ui/components/report_modal.js"],"names":["StatusCheckBox","render","_this$props","this","props","status","checked","onToggle","disabled","media","get","size","some","item","getIn","video","Object","jsx","bundle","fetchComponent","Video","loading","renderLoadingVideoPlayer","Component","preview","src","alt","width","height","inline","sensitive","revealed","onOpenVideo","noop","MediaGallery","renderLoadingMediaGallery","onOpenMedia","className","status_content","component_default","a","onChange","React","PureComponent","connect","state","_ref","id","ImmutableSet","includes","dispatch","_ref2","e","toggleStatusReport","target","messages","defineMessages","close","defaultMessage","placeholder","submit","ReportModal","getAccount","makeGetAccount","accountId","isSubmitting","account","comment","forward","statusIds","OrderedSet","union","injectIntl","_this","changeReportComment","value","changeReportForward","submitReport","keyCode","ctrlKey","metaKey","handleSubmit","componentDidMount","expandAccountTimeline","withReplies","componentWillReceiveProps","nextProps","intl","onClose","domain","split","icon_button","title","formatMessage","icon","onClick","index_es","values","handleCommentChange","onKeyDown","handleKeyDown","autoFocus","handleForwardChange","htmlFor","components_button","text","map","statusId","status_check_box_container","ImmutablePureComponent","PropTypes","bool","ImmutablePropTypes","orderedSet","isRequired","string","func","object"],"mappings":"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","file":"flavours/glitch/async/report_modal.js","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Toggle from 'react-toggle';\nimport noop from 'lodash/noop';\nimport StatusContent from 'flavours/glitch/components/status_content';\nimport { MediaGallery, Video } from 'flavours/glitch/util/async-components';\nimport Bundle from 'flavours/glitch/features/ui/components/bundle';\n\nexport default class StatusCheckBox extends React.PureComponent {\n\n static propTypes = {\n status: ImmutablePropTypes.map.isRequired,\n checked: PropTypes.bool,\n onToggle: PropTypes.func.isRequired,\n disabled: PropTypes.bool,\n };\n\n render () {\n const { status, checked, onToggle, disabled } = this.props;\n let media = null;\n\n if (status.get('reblog')) {\n return null;\n }\n\n if (status.get('media_attachments').size > 0) {\n if (status.get('media_attachments').some(item => item.get('type') === 'unknown')) {\n\n } else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {\n const video = status.getIn(['media_attachments', 0]);\n\n media = (\n <Bundle fetchComponent={Video} loading={this.renderLoadingVideoPlayer} >\n {Component => (\n <Component\n preview={video.get('preview_url')}\n src={video.get('url')}\n alt={video.get('description')}\n width={239}\n height={110}\n inline\n sensitive={status.get('sensitive')}\n revealed={false}\n onOpenVideo={noop}\n />\n )}\n </Bundle>\n );\n } else {\n media = (\n <Bundle fetchComponent={MediaGallery} loading={this.renderLoadingMediaGallery} >\n {Component => <Component media={status.get('media_attachments')} sensitive={status.get('sensitive')} revealed={false} height={110} onOpenMedia={noop} />}\n </Bundle>\n );\n }\n }\n\n return (\n <div className='status-check-box'>\n <div className='status-check-box__status'>\n <StatusContent\n status={status}\n media={media}\n />\n </div>\n\n <div className='status-check-box-toggle'>\n <Toggle checked={checked} onChange={onToggle} disabled={disabled} />\n </div>\n </div>\n );\n }\n\n}\n","import { connect } from 'react-redux';\nimport StatusCheckBox from '../components/status_check_box';\nimport { toggleStatusReport } from 'flavours/glitch/actions/reports';\nimport { Set as ImmutableSet } from 'immutable';\n\nconst mapStateToProps = (state, { id }) => ({\n status: state.getIn(['statuses', id]),\n checked: state.getIn(['reports', 'new', 'status_ids'], ImmutableSet()).includes(id),\n});\n\nconst mapDispatchToProps = (dispatch, { id }) => ({\n\n onToggle (e) {\n dispatch(toggleStatusReport(id, e.target.checked));\n },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(StatusCheckBox);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { changeReportComment, changeReportForward, submitReport } from 'flavours/glitch/actions/reports';\nimport { expandAccountTimeline } from 'flavours/glitch/actions/timelines';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { makeGetAccount } from 'flavours/glitch/selectors';\nimport { defineMessages, FormattedMessage, injectIntl } from 'react-intl';\nimport StatusCheckBox from 'flavours/glitch/features/report/containers/status_check_box_container';\nimport { OrderedSet } from 'immutable';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport Button from 'flavours/glitch/components/button';\nimport Toggle from 'react-toggle';\nimport IconButton from '../../../components/icon_button';\n\nconst messages = defineMessages({\n close: { id: 'lightbox.close', defaultMessage: 'Close' },\n placeholder: { id: 'report.placeholder', defaultMessage: 'Additional comments' },\n submit: { id: 'report.submit', defaultMessage: 'Submit' },\n});\n\nconst makeMapStateToProps = () => {\n const getAccount = makeGetAccount();\n\n const mapStateToProps = state => {\n const accountId = state.getIn(['reports', 'new', 'account_id']);\n\n return {\n isSubmitting: state.getIn(['reports', 'new', 'isSubmitting']),\n account: getAccount(state, accountId),\n comment: state.getIn(['reports', 'new', 'comment']),\n forward: state.getIn(['reports', 'new', 'forward']),\n statusIds: OrderedSet(state.getIn(['timelines', `account:${accountId}:with_replies`, 'items'])).union(state.getIn(['reports', 'new', 'status_ids'])),\n };\n };\n\n return mapStateToProps;\n};\n\n@connect(makeMapStateToProps)\n@injectIntl\nexport default class ReportModal extends ImmutablePureComponent {\n\n static propTypes = {\n isSubmitting: PropTypes.bool,\n account: ImmutablePropTypes.map,\n statusIds: ImmutablePropTypes.orderedSet.isRequired,\n comment: PropTypes.string.isRequired,\n forward: PropTypes.bool,\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n handleCommentChange = e => {\n this.props.dispatch(changeReportComment(e.target.value));\n }\n\n handleForwardChange = e => {\n this.props.dispatch(changeReportForward(e.target.checked));\n }\n\n handleSubmit = () => {\n this.props.dispatch(submitReport());\n }\n\n handleKeyDown = e => {\n if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {\n this.handleSubmit();\n }\n }\n\n componentDidMount () {\n this.props.dispatch(expandAccountTimeline(this.props.account.get('id'), { withReplies: true }));\n }\n\n componentWillReceiveProps (nextProps) {\n if (this.props.account !== nextProps.account && nextProps.account) {\n this.props.dispatch(expandAccountTimeline(nextProps.account.get('id'), { withReplies: true }));\n }\n }\n\n render () {\n const { account, comment, intl, statusIds, isSubmitting, forward, onClose } = this.props;\n\n if (!account) {\n return null;\n }\n\n const domain = account.get('acct').split('@')[1];\n\n return (\n <div className='modal-root__modal report-modal'>\n <div className='report-modal__target'>\n <IconButton className='media-modal__close' title={intl.formatMessage(messages.close)} icon='times' onClick={onClose} size={16} />\n <FormattedMessage id='report.target' defaultMessage='Report {target}' values={{ target: <strong>{account.get('acct')}</strong> }} />\n </div>\n\n <div className='report-modal__container'>\n <div className='report-modal__comment'>\n <p><FormattedMessage id='report.hint' defaultMessage='The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:' /></p>\n\n <textarea\n className='setting-text light'\n placeholder={intl.formatMessage(messages.placeholder)}\n value={comment}\n onChange={this.handleCommentChange}\n onKeyDown={this.handleKeyDown}\n disabled={isSubmitting}\n autoFocus\n />\n\n {domain && (\n <div>\n <p><FormattedMessage id='report.forward_hint' defaultMessage='The account is from another server. Send an anonymized copy of the report there as well?' /></p>\n\n <div className='setting-toggle'>\n <Toggle id='report-forward' checked={forward} disabled={isSubmitting} onChange={this.handleForwardChange} />\n <label htmlFor='report-forward' className='setting-toggle__label'><FormattedMessage id='report.forward' defaultMessage='Forward to {target}' values={{ target: domain }} /></label>\n </div>\n </div>\n )}\n\n <Button disabled={isSubmitting} text={intl.formatMessage(messages.submit)} onClick={this.handleSubmit} />\n </div>\n\n <div className='report-modal__statuses'>\n <div>\n {statusIds.map(statusId => <StatusCheckBox id={statusId} key={statusId} disabled={isSubmitting} />)}\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n}\n"],"sourceRoot":""}