Changeset View
Changeset View
Standalone View
Standalone View
landing/hero-content.react.js
// @flow | // @flow | ||||
import classNames from 'classnames'; | import classNames from 'classnames'; | ||||
import * as React from 'react'; | import * as React from 'react'; | ||||
import { imageAssetMetaData } from './asset-meta-data.js'; | |||||
import css from './hero-content.css'; | import css from './hero-content.css'; | ||||
import SubscriptionForm from './subscription-form.react.js'; | import SubscriptionForm from './subscription-form.react.js'; | ||||
import typography from './typography.css'; | import typography from './typography.css'; | ||||
function HeroContent(): React.Node { | function HeroContent(): React.Node { | ||||
const [hero] = imageAssetMetaData; | |||||
const headerClassName = classNames([typography.display3, css.header]); | const headerClassName = classNames([typography.display3, css.header]); | ||||
const subheaderClassName = classNames([ | const subheaderClassName = classNames([ | ||||
typography.subheading2, | typography.subheading2, | ||||
css.subHeader, | css.subHeader, | ||||
]); | ]); | ||||
return ( | return ( | ||||
<section className={hero.infoStyle}> | <section className={css.heroInfo}> | ||||
<div className={css.contentWrapper}> | |||||
<h1 className={headerClassName}> | <h1 className={headerClassName}> | ||||
Comm is an encrypted messaging app for <span>communities</span> | Comm is an encrypted messaging app for <span>communities</span> | ||||
</h1> | </h1> | ||||
<p className={subheaderClassName}> | <p className={subheaderClassName}> | ||||
We extend Signal’s model of E2E encryption with personal servers | We extend Signal’s model of E2E encryption with personal servers | ||||
to enable richer functionality. | to enable richer functionality. | ||||
</p> | </p> | ||||
<SubscriptionForm /> | <SubscriptionForm /> | ||||
</div> | |||||
</section> | </section> | ||||
); | ); | ||||
} | } | ||||
export default HeroContent; | export default HeroContent; |