import { createElement, Component } from '@wordpress/element'
import _ from 'underscore'
import classnames from 'classnames'
import InputWithOnlyNumbers from '../components/InputWithOnlyNumbers'
const NumberOption = ({ value, option, option: { attr }, onChange }) => (
onChange(
Math.min(
Math.max(
parseInt(value, 10) - 1,
option.min || -Infinity
),
option.max || Infinity
)
)
}
/>
onChange(
Math.min(
Math.max(
parseInt(value, 10) + 1,
option.min || -Infinity
),
option.max || Infinity
)
)
}
/>
parseInt(value, 10)
? onChange(
Math.min(
Math.max(value, option.min || -Infinity),
option.max || Infinity
)
)
: []
}
onChange={(value, can_safely_parse) =>
can_safely_parse && _.isNumber(parseInt(value, 10))
? onChange(
Math.min(
Math.max(value, option.min || -Infinity),
option.max || Infinity
)
)
: parseFloat(value)
? onChange(
Math.min(parseFloat(value), option.max || Infinity)
)
: onChange(value)
}
/>
)
export default NumberOption