Fixs composeValidators

Adds composeValidators for apps section
This commit is contained in:
apane 2020-04-23 15:14:50 -03:00 committed by Mikhail Mikheev
parent 75418ebc52
commit 8da025c86e
2 changed files with 11 additions and 3 deletions

View File

@ -88,7 +88,10 @@ export const uniqueAddress = (addresses: string[] | List<string>) =>
return addressAlreadyExists ? ADDRESS_REPEATED_ERROR : undefined
})
export const composeValidators = (...validators: Function[]): FieldValidator => (value: Field, values, meta) => {
export const composeValidators = (...validators: Function[]): FieldValidator => (value: Field) =>
validators.reduce((error, validator) => error || validator(value), undefined)
export const composeValidatorsApps = (...validators: Function[]): FieldValidator => (value: Field, values, meta) => {
if (!meta.modified) {
return
}

View File

@ -9,7 +9,7 @@ import { getAppInfoFromUrl } from './utils'
import Field from '~/components/forms/Field'
import DebounceValidationField from '~/components/forms/Field/DebounceValidationField'
import GnoForm from '~/components/forms/GnoForm'
import { composeValidators, required } from '~/components/forms/validator'
import { composeValidatorsApps, required } from '~/components/forms/validator'
import Img from '~/components/layout/Img'
import appsIconSvg from '~/routes/safe/components/Transactions/TxsTable/TxType/assets/appsIcon.svg'
@ -120,7 +120,12 @@ const ManageApps = ({ appList, onAppAdded, onAppToggle }: Props) => {
name="appUrl"
placeholder="App URL"
type="text"
validate={composeValidators(customRequiredValidator, urlValidator, uniqueAppValidator, safeAppValidator)}
validate={composeValidatorsApps(
customRequiredValidator,
urlValidator,
uniqueAppValidator,
safeAppValidator,
)}
/>
<AppInfo>