mirror of
https://github.com/luxfi/explore.git
synced 2026-09-24 00:28:18 +00:00
* first version of the pack * single entry point * add custom components to the package * move form components to toolkit * add more utils and hooks to the package * minor fixes * add CI workflow * update readme and package.json * fix ts * fix build of env-validator * fix docker build * fix icons size * test fixes * more test fixes
35 lines
1.2 KiB
TypeScript
35 lines
1.2 KiB
TypeScript
import React from 'react';
|
|
import { useFormContext } from 'react-hook-form';
|
|
|
|
import type { FormFields } from '../types';
|
|
|
|
import { FormFieldCheckbox } from 'toolkit/components/forms/fields/FormFieldCheckbox';
|
|
|
|
import ContractVerificationFormRow from '../ContractVerificationFormRow';
|
|
import ContractVerificationFieldConstructorArgs from './ContractVerificationFieldConstructorArgs';
|
|
|
|
const ContractVerificationFieldAutodetectArgs = () => {
|
|
const [ isOn, setIsOn ] = React.useState(true);
|
|
const { resetField } = useFormContext<FormFields>();
|
|
|
|
const handleCheckboxChange = React.useCallback(() => {
|
|
!isOn && resetField('constructor_args');
|
|
setIsOn(prev => !prev);
|
|
}, [ isOn, resetField ]);
|
|
|
|
return (
|
|
<>
|
|
<ContractVerificationFormRow>
|
|
<FormFieldCheckbox<FormFields, 'autodetect_constructor_args'>
|
|
name="autodetect_constructor_args"
|
|
label="Try to fetch constructor arguments automatically"
|
|
onChange={ handleCheckboxChange }
|
|
/>
|
|
</ContractVerificationFormRow>
|
|
{ !isOn && <ContractVerificationFieldConstructorArgs/> }
|
|
</>
|
|
);
|
|
};
|
|
|
|
export default React.memo(ContractVerificationFieldAutodetectArgs);
|