Repository URL to install this package:
|
Version:
3.7.2 ▾
|
import { NO_OP } from 'exotic'
import { createContext } from 'react'
import { ValidationStrategy } from './typings'
/**
* in production, use NO_OP, in dev, default to console debugs
*/
const EMPTY_VALIDATION_STRATEGY =
process.env.NODE_ENV === 'production'
? Object.freeze({
onChange: NO_OP,
onBlur: NO_OP,
onFocus: NO_OP,
onSubmit: NO_OP,
})
: Object.freeze({
onChange: () => console.debug('[1input]{Strategy} default onChange'),
onBlur: () => console.debug('[1input]{Strategy} default onBlur'),
onFocus: () => console.debug('[1input]{Strategy} default onFocus'),
onSubmit: () => console.debug('[1input]{Strategy} default onSubmit'),
})
export const ValidationStrategyContext = createContext<ValidationStrategy>(
EMPTY_VALIDATION_STRATEGY as any
)
export const { Provider, Consumer } = ValidationStrategyContext