ghost-portal/packages/react-components/src/VoteToggle.tsx
2020-04-01 15:30:08 +02:00

36 lines
1011 B
TypeScript

// Copyright 2017-2020 @polkadot/react-components authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import React, { useMemo } from 'react';
import Dropdown from './Dropdown';
import { useTranslation } from './translate';
interface Props {
className?: string;
onChange: (value: boolean) => void;
value: boolean;
}
function VoteToggle ({ className, onChange, value }: Props): React.ReactElement<Props> {
const { t } = useTranslation();
const voteOpts = useMemo(() => [
{ text: t('Aye, I approve'), value: true },
{ text: t('Nay, I do not approve'), value: false }
], [t]);
return (
<Dropdown
className={className}
help={t('Select your vote preferences for this proposal, either to approve or disapprove')}
label={t('record my vote as')}
onChange={onChange}
options={voteOpts}
value={value}
/>
);
}
export default React.memo(VoteToggle);