{"version":3,"sources":["webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/features/ui/components/onboarding_modal.js"],"names":["noop","messages","defineMessages","home_title","notifications_title","local_title","federated_title","PageOne","acct","domain","className","style","flex","id","defaultMessage","values","handle","PageTwo","intl","myAccount","account","privacy","text","spoilerText","suggestions","PageThree","value","onChange","onSubmit","onClear","onShow","illustration","to","href","introductions","PageFour","icon","type","formatMessage","marginBottom","PageSix","admin","adminSection","get","guidelines","target","fork","rel","Mastodon","github","apps","OnboardingModal","connect","state","getIn","me","injectIntl","currentIndex","e","preventDefault","props","onClose","i","Number","currentTarget","getAttribute","setState","Math","max","pages","min","length","index","key","handlePrev","handleNext","componentWillMount","this","componentDidMount","window","addEventListener","handleKeyUp","componentWillUnmount","render","nextOrDoneBtn","onClick","handleClose","onChangeIndex","handleSwipe","map","page","classNames","handleSkip","_","active","role","tabIndex","data-index","handleDot","React","PureComponent"],"mappings":"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","file":"flavours/glitch/async/onboarding_modal.js","sourcesContent":["import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport ReactSwipeableViews from 'react-swipeable-views';\nimport classNames from 'classnames';\nimport Permalink from 'flavours/glitch/components/permalink';\nimport ComposeForm from 'flavours/glitch/features/compose/components/compose_form';\nimport DrawerAccount from 'flavours/glitch/features/compose/components/navigation_bar';\nimport Search from 'flavours/glitch/features/compose/components/search';\nimport ColumnHeader from './column_header';\nimport { me } from 'flavours/glitch/util/initial_state';\n\nconst noop = () => { };\n\nconst messages = defineMessages({\n home_title: { id: 'column.home', defaultMessage: 'Home' },\n notifications_title: { id: 'column.notifications', defaultMessage: 'Notifications' },\n local_title: { id: 'column.community', defaultMessage: 'Local timeline' },\n federated_title: { id: 'column.public', defaultMessage: 'Federated timeline' },\n});\n\nconst PageOne = ({ acct, domain }) => (\n
\n
\n
\n
\n\n
\n

\n

\n

@{acct}@{domain} }} />

\n
\n
\n);\n\nPageOne.propTypes = {\n acct: PropTypes.string.isRequired,\n domain: PropTypes.string.isRequired,\n};\n\nconst PageTwo = ({ intl, myAccount }) => (\n
\n
\n
\n \n \n
\n
\n\n

\n
\n);\n\nPageTwo.propTypes = {\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map.isRequired,\n};\n\nconst PageThree = ({ intl, myAccount }) => (\n
\n
\n \n\n
\n \n
\n
\n\n

#illustration, introductions: #introductions }} />

\n

\n
\n);\n\nPageThree.propTypes = {\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map.isRequired,\n};\n\nconst PageFour = ({ domain, intl }) => (\n
\n
\n
\n
\n
\n

\n
\n\n
\n
\n

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

\n
\n
\n);\n\nPageFour.propTypes = {\n domain: PropTypes.string.isRequired,\n intl: PropTypes.object.isRequired,\n};\n\nconst PageSix = ({ admin, domain }) => {\n let adminSection = '';\n\n if (admin) {\n adminSection = (\n

\n @{admin.get('acct')} }} />\n
\n }} />\n

\n );\n }\n\n return (\n
\n

\n {adminSection}\n

fork, Mastodon: Mastodon, github: GitHub }} />

\n

}} />

\n

\n
\n );\n};\n\nPageSix.propTypes = {\n admin: ImmutablePropTypes.map,\n domain: PropTypes.string.isRequired,\n};\n\nconst mapStateToProps = state => ({\n myAccount: state.getIn(['accounts', me]),\n admin: state.getIn(['accounts', state.getIn(['meta', 'admin'])]),\n domain: state.getIn(['meta', 'domain']),\n});\n\nexport default @connect(mapStateToProps)\n@injectIntl\nclass OnboardingModal extends React.PureComponent {\n\n static propTypes = {\n onClose: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n myAccount: ImmutablePropTypes.map.isRequired,\n domain: PropTypes.string.isRequired,\n admin: ImmutablePropTypes.map,\n };\n\n state = {\n currentIndex: 0,\n };\n\n componentWillMount() {\n const { myAccount, admin, domain, intl } = this.props;\n this.pages = [\n ,\n ,\n ,\n ,\n ,\n ];\n };\n\n componentDidMount() {\n window.addEventListener('keyup', this.handleKeyUp);\n }\n\n componentWillUnmount() {\n window.addEventListener('keyup', this.handleKeyUp);\n }\n\n handleSkip = (e) => {\n e.preventDefault();\n this.props.onClose();\n }\n\n handleDot = (e) => {\n const i = Number(e.currentTarget.getAttribute('data-index'));\n e.preventDefault();\n this.setState({ currentIndex: i });\n }\n\n handlePrev = () => {\n this.setState(({ currentIndex }) => ({\n currentIndex: Math.max(0, currentIndex - 1),\n }));\n }\n\n handleNext = () => {\n const { pages } = this;\n this.setState(({ currentIndex }) => ({\n currentIndex: Math.min(currentIndex + 1, pages.length - 1),\n }));\n }\n\n handleSwipe = (index) => {\n this.setState({ currentIndex: index });\n }\n\n handleKeyUp = ({ key }) => {\n switch (key) {\n case 'ArrowLeft':\n this.handlePrev();\n break;\n case 'ArrowRight':\n this.handleNext();\n break;\n }\n }\n\n handleClose = () => {\n this.props.onClose();\n }\n\n render () {\n const { pages } = this;\n const { currentIndex } = this.state;\n const hasMore = currentIndex < pages.length - 1;\n\n const nextOrDoneBtn = hasMore ? (\n \n \n \n ) : (\n \n \n \n );\n\n return (\n
\n \n {pages.map((page, i) => {\n const className = classNames('onboarding-modal__page__wrapper', {\n 'onboarding-modal__page__wrapper--active': i === currentIndex,\n });\n return (\n
{page}
\n );\n })}\n
\n\n
\n
\n \n \n \n
\n\n
\n {pages.map((_, i) => {\n const className = classNames('onboarding-modal__dot', {\n active: i === currentIndex,\n });\n return (\n \n );\n })}\n
\n\n
\n {nextOrDoneBtn}\n
\n
\n
\n );\n }\n\n}\n"],"sourceRoot":""}