{"version":3,"sources":["webpack:///app/javascript/opt/mastodon/app/javascript/flavours/glitch/components/server_hero_image.tsx","webpack:///app/javascript/opt/mastodon/app/javascript/flavours/glitch/features/about/index.jsx"],"names":["ServerHeroImage","_ref","src","srcSet","blurhash","className","loaded","setLoaded","useState","handleLoad","useCallback","_jsx","classNames","role","Blurhash","hash","alt","onLoad","messages","defineMessages","title","id","defaultMessage","rules","blocks","silenced","silencedExplanation","suspended","suspendedExplanation","severityMessages","silence","explanation","suspend","Section","PureComponent","constructor","arguments","_defineProperty","collapsed","this","props","open","onOpen","state","setState","render","children","active","tabIndex","onClick","handleClick","Icon","icon","ChevronRightIcon","ExpandMoreIcon","About","dispatch","fetchDomainBlocks","componentDidMount","fetchServer","fetchExtendedDescription","_server$getIn","_extendedDescription$","multiColumn","intl","server","extendedDescription","domainBlocks","isLoading","get","Column","bindToDocument","label","formatMessage","getIn","map","value","key","replace","join","Skeleton","width","FormattedMessage","values","mastodon","href","target","Account","size","minimal","_jsxs","_Fragment","length","dangerouslySetInnerHTML","__html","ImmutableList","isEmpty","rule","handleDomainBlocksOpen","block","LinkFooter","Helmet","name","content","connect","injectIntl"],"mappings":"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","file":"js/features/glitch/async/about-acffe2f7a22986d8a161.chunk.js","sourcesContent":["import { useCallback, useState } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Blurhash } from './blurhash';\n\ninterface Props {\n src: string;\n srcSet?: string;\n blurhash?: string;\n className?: string;\n}\n\nexport const ServerHeroImage: React.FC = ({\n src,\n srcSet,\n blurhash,\n className,\n}) => {\n const [loaded, setLoaded] = useState(false);\n\n const handleLoad = useCallback(() => {\n setLoaded(true);\n }, [setLoaded]);\n\n return (\n \n {blurhash && }\n \n \n );\n};\n","import PropTypes from 'prop-types';\nimport { PureComponent } from 'react';\n\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\n\nimport classNames from 'classnames';\nimport { Helmet } from 'react-helmet';\n\nimport { List as ImmutableList } from 'immutable';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { connect } from 'react-redux';\n\nimport ChevronRightIcon from '@/material-icons/400-24px/chevron_right.svg?react';\nimport ExpandMoreIcon from '@/material-icons/400-24px/expand_more.svg?react';\nimport { fetchServer, fetchExtendedDescription, fetchDomainBlocks } from 'flavours/glitch/actions/server';\nimport Column from 'flavours/glitch/components/column';\nimport { Icon } from 'flavours/glitch/components/icon';\nimport { ServerHeroImage } from 'flavours/glitch/components/server_hero_image';\nimport { Skeleton } from 'flavours/glitch/components/skeleton';\nimport Account from 'flavours/glitch/containers/account_container';\nimport LinkFooter from 'flavours/glitch/features/ui/components/link_footer';\n\nconst messages = defineMessages({\n title: { id: 'column.about', defaultMessage: 'About' },\n rules: { id: 'about.rules', defaultMessage: 'Server rules' },\n blocks: { id: 'about.blocks', defaultMessage: 'Moderated servers' },\n silenced: { id: 'about.domain_blocks.silenced.title', defaultMessage: 'Limited' },\n silencedExplanation: { id: 'about.domain_blocks.silenced.explanation', defaultMessage: 'You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.' },\n suspended: { id: 'about.domain_blocks.suspended.title', defaultMessage: 'Suspended' },\n suspendedExplanation: { id: 'about.domain_blocks.suspended.explanation', defaultMessage: 'No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.' },\n});\n\nconst severityMessages = {\n silence: {\n title: messages.silenced,\n explanation: messages.silencedExplanation,\n },\n\n suspend: {\n title: messages.suspended,\n explanation: messages.suspendedExplanation,\n },\n};\n\nconst mapStateToProps = state => ({\n server: state.getIn(['server', 'server']),\n extendedDescription: state.getIn(['server', 'extendedDescription']),\n domainBlocks: state.getIn(['server', 'domainBlocks']),\n});\n\nclass Section extends PureComponent {\n\n static propTypes = {\n title: PropTypes.string,\n children: PropTypes.node,\n open: PropTypes.bool,\n onOpen: PropTypes.func,\n };\n\n state = {\n collapsed: !this.props.open,\n };\n\n handleClick = () => {\n const { onOpen } = this.props;\n const { collapsed } = this.state;\n\n this.setState({ collapsed: !collapsed }, () => onOpen && onOpen());\n };\n\n render () {\n const { title, children } = this.props;\n const { collapsed } = this.state;\n\n return (\n
\n
\n {title}\n
\n\n {!collapsed && (\n
{children}
\n )}\n
\n );\n }\n\n}\n\nclass About extends PureComponent {\n\n static propTypes = {\n server: ImmutablePropTypes.map,\n extendedDescription: ImmutablePropTypes.map,\n domainBlocks: ImmutablePropTypes.contains({\n isLoading: PropTypes.bool,\n isAvailable: PropTypes.bool,\n items: ImmutablePropTypes.list,\n }),\n dispatch: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n multiColumn: PropTypes.bool,\n };\n\n componentDidMount () {\n const { dispatch } = this.props;\n dispatch(fetchServer());\n dispatch(fetchExtendedDescription());\n }\n\n handleDomainBlocksOpen = () => {\n const { dispatch } = this.props;\n dispatch(fetchDomainBlocks());\n };\n\n render () {\n const { multiColumn, intl, server, extendedDescription, domainBlocks } = this.props;\n const isLoading = server.get('isLoading');\n\n return (\n \n
\n
\n `${value} ${key.replace('@', '')}`).join(', ')} className='about__header__hero' />\n

{isLoading ? : server.get('domain')}

\n

Mastodon }} />

\n
\n\n
\n
\n

\n\n \n
\n\n
\n\n
\n

\n\n {isLoading ? : {server.getIn(['contact', 'email'])}}\n
\n
\n\n
\n {extendedDescription.get('isLoading') ? (\n <>\n \n
\n \n
\n \n
\n \n \n ) : (extendedDescription.get('content')?.length > 0 ? (\n \n ) : (\n

\n ))}\n
\n\n
\n {!isLoading && (server.get('rules', ImmutableList()).isEmpty() ? (\n

\n ) : (\n
    \n {server.get('rules').map(rule => (\n
  1. \n
    {rule.get('text')}
    \n {rule.get('hint').length > 0 && (
    {rule.get('hint')}
    )}\n
  2. \n ))}\n
\n ))}\n
\n\n
\n {domainBlocks.get('isLoading') ? (\n <>\n \n
\n \n \n ) : (domainBlocks.get('isAvailable') ? (\n <>\n

\n\n {domainBlocks.get('items').size > 0 && (\n
\n {domainBlocks.get('items').map(block => (\n
\n
\n
{block.get('domain')}
\n {intl.formatMessage(severityMessages[block.get('severity')].title)}\n
\n\n

{(block.get('comment') || '').length > 0 ? block.get('comment') : }

\n
\n ))}\n
\n )}\n \n ) : (\n

\n ))}\n
\n\n \n\n
\n

\n

\n
\n
\n\n \n {intl.formatMessage(messages.title)}\n \n \n
\n );\n }\n\n}\n\nexport default connect(mapStateToProps)(injectIntl(About));\n"],"sourceRoot":""}