Create accessibility banner component

This commit is contained in:
tidy-dev 2024-04-15 08:11:57 -04:00
parent 19ae43eae8
commit 055014e1b1

View file

@ -0,0 +1,45 @@
import * as React from 'react'
import { Octicon } from '../octicons'
import * as octicons from '../octicons/octicons.generated'
import { Banner } from './banner'
import { LinkButton } from '../lib/link-button'
import { setBoolean } from '../../lib/local-storage'
export const accessibilityBannerDismissed = 'accessibility-banner-dismissed'
interface IAccessibilitySettingsBannerProps {
readonly onOpenAccessibilitySettings: () => void
readonly onDismissed: () => void
}
export class AccessibilitySettingsBanner extends React.Component<IAccessibilitySettingsBannerProps> {
private onDismissed = () => {
setBoolean(accessibilityBannerDismissed, true)
this.props.onDismissed()
}
private onOpenAccessibilitySettings = () => {
this.props.onOpenAccessibilitySettings()
this.onDismissed()
}
public render() {
return (
<Banner
id="accessibility-settings-banner"
dismissable={true}
onDismissed={this.onDismissed}
>
<Octicon symbol={octicons.accessibilityInset} />
<div className="banner-message">
Check out the new{' '}
<LinkButton onClick={this.onOpenAccessibilitySettings}>
{' '}
accessibility settings
</LinkButton>{' '}
that increase the visibility of links and diff controls.
</div>
</Banner>
)
}
}