sanitize interst

This commit is contained in:
Pablo Martin 2025-05-23 00:31:13 +02:00
parent 20a3ea0995
commit 21cc74d363
2 changed files with 30 additions and 12 deletions

View file

@ -1,12 +1,33 @@
import BaseInput from "./BaseInput";
import OnlyDigitsEventMiddleware from "../eventMiddlewares/OnlyDigitsEventMiddleware";
import MinMaxEventMiddleware from "../eventMiddlewares/MinMaxEventMiddleware";
const LoanInterestInput = ({ onChangeCallback, loanInterest }) => (
<BaseInput
label="Interés (TIN)"
value={loanInterest}
onChangeCallback={onChangeCallback}
suffix="%"
/>
);
const LoanInterestInput = ({ onChangeCallback, loanInterest }) => {
const decoratedChangeHandler = (event) => {
const digitDecoratedHandler = () => {
OnlyDigitsEventMiddleware({
event: event,
next: onChangeCallback,
});
};
const minMaxDecoratedHandler = MinMaxEventMiddleware({
event: event,
next: digitDecoratedHandler,
min: 0,
});
return minMaxDecoratedHandler;
};
return (
<BaseInput
label="Interés (TIN)"
value={loanInterest}
onChangeCallback={decoratedChangeHandler}
suffix="%"
/>
);
};
export default LoanInterestInput;

View file

@ -3,14 +3,12 @@ const MinMaxEventMiddleware = ({ event, next, min = null, max = null }) => {
if ((min || min === 0) && max) {
if (min <= valueNumber && valueNumber <= max) {
console.log("min <= valueNumber <= max");
next(event);
}
return;
}
if (min) {
console.log("Min");
if (min || min === 0) {
if (min <= valueNumber) {
next(event);
}
@ -18,7 +16,6 @@ const MinMaxEventMiddleware = ({ event, next, min = null, max = null }) => {
}
if (max) {
console.log("Max");
if (valueNumber <= max) {
next(event);
}