From 98cee8347c24821d2359990171a07ec18f88447b Mon Sep 17 00:00:00 2001 From: David Bonnet Date: Sun, 2 Jun 2019 19:24:55 +0200 Subject: [PATCH] feat(values): provide state to transformOnChange --- README.md | 2 +- src/values.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d145beb3..82c8ec80 100644 --- a/README.md +++ b/README.md @@ -225,7 +225,7 @@ Sets `value` to `defaultValue` if `value` is `nil`. > ⬇️ `{ value?, onChange? }` Replaces `value` with the return value of `transformValue(value, previous?: { transformedValue, value })`, if set. Note that `previous` is not provided when the component first mounts, since there are no previous prop values. -Replaces `value` passed to `onChange(value, name, payload)` with the return value of `transformOnChange(value, name, payload)`, if set. +Replaces `value` passed to `onChange(value, name, payload)` with the return value of `transformOnChange(value, name, payload, previous: { transformedValue?, value? })`, if set. #### `filterable` diff --git a/src/values.js b/src/values.js index 6a502923..3b010956 100644 --- a/src/values.js +++ b/src/values.js @@ -36,7 +36,7 @@ function transformedOnChange(element) { return (value, name, payload) => { const { props } = element return props.onChange( - props.transformOnChange(value, name, payload), + props.transformOnChange(value, name, payload, element.state), name, payload, ) @@ -46,7 +46,7 @@ function transformedOnChange(element) { export const transformable = (Component) => /* Replaces `value` with the return value of `transformValue(value, previous: { transformedValue?, value? })`, if set. Note that `previous` is not provided when the component first mounts, since there are no previous prop values. - Replaces `value` passed to `onChange(value, name, payload)` with the return value of `transformOnChange(value, name, payload)`, if set. + Replaces `value` passed to `onChange(value, name, payload)` with the return value of `transformOnChange(value, name, payload, previous: { transformedValue?, value? })`, if set. */ setWrapperName( Component,