@danderson00/react-forms 0.0.46 → 0.0.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/input.js +2 -1
- package/dist/input.js.map +1 -1
- package/package.json +1 -1
- package/src/input.js +2 -1
package/dist/input.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports["default"] = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
+
var _objectPathImmutable = require("object-path-immutable");
|
|
9
10
|
var _usePrevious = _interopRequireDefault(require("./usePrevious"));
|
|
10
11
|
var _useUpdate = _interopRequireDefault(require("./useUpdate"));
|
|
11
12
|
var _inputTypes = _interopRequireDefault(require("./inputTypes"));
|
|
@@ -102,7 +103,7 @@ var _default = function _default(render) {
|
|
|
102
103
|
var element = document.querySelector("#".concat(id));
|
|
103
104
|
if (element) {
|
|
104
105
|
var _element$setCustomVal;
|
|
105
|
-
var validationMessage = getValidationMessage && getValidationMessage(newValue === undefined ? getFieldValue(name) : newValue, oldValues || getFieldValues());
|
|
106
|
+
var validationMessage = getValidationMessage && getValidationMessage(newValue === undefined ? getFieldValue(name) || (0, _objectPathImmutable.get)(oldValues, name) : newValue, oldValues || getFieldValues());
|
|
106
107
|
(_element$setCustomVal = element.setCustomValidity) === null || _element$setCustomVal === void 0 ? void 0 : _element$setCustomVal.call(element, validationMessage || "");
|
|
107
108
|
setFieldValidated(true);
|
|
108
109
|
// this is a little hacky, but the simplest way I could think of to determine the
|
package/dist/input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","names":["_react","require","_usePrevious","_interopRequireDefault","_useUpdate","_inputTypes","_throttle2","_excluded","obj","__esModule","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","nextElementId","id","concat","_default","render","options","Input","props","Error","setFieldValue","_useState","useState","_useState2","fieldValidated","setFieldValidated","_useState3","_useState4","error","setError","_useState5","_useState6","previousValueProp","usePrevious","_props$groups","groups","throttle","onSubmit","map","group","submitHandler","createThrottled","isNaN","useEffect","getFieldValue","registerFieldValidator","_types","types","setInitialValue","applyValueTransforms","set","element","document","querySelector","updateValidationState","useUpdate","_types2","useCallback","newValue","oldValues","getValidationMessage","getFieldValues","_element$setCustomVal","validationMessage","setCustomValidity","invalid","Boolean","onValidated","onChange","_len","args","_key","event","submitOnChange","valueFromEvent","_types3","getOutputValue","elementValue","checkValidity","additionalValues","onBlur","submitOnBlur","_len2","_key2","onFocus","selectOnFocus","_len3","_key3","selectText","selectionStart","selectionEnd","setTimeout","onKeyDown","_len4","_key4","numeric","exec","includes","keyCode","preventDefault","passErrorProp","_types4","getValueProps","type","checked","defaultValue","valid","passThroughProps","valueProps","currentValue","numericProps","typeProps","errorProps","className","finalProps","exports"],"sources":["../src/input.js"],"sourcesContent":["import { useCallback, useState, useEffect } from 'react'\nimport usePrevious from './usePrevious'\nimport useUpdate from './useUpdate'\nimport types from './inputTypes'\nimport createThrottled from './throttle'\n\nconst nextElementId = (id => () => `react-forms-${++id}`)(0)\n\nexport default (render, options = {}) => function Input(props) {\n if (!props.name) throw new Error(\"You must provide a name prop to form components\")\n if (!props.setFieldValue) throw new Error(\"Input components must be contained within a Form component\")\n\n const [fieldValidated, setFieldValidated] = useState(false)\n const [error, setError] = useState(false)\n const [id] = useState(props.id || nextElementId())\n const previousValueProp = usePrevious(props.value)\n\n // this is currently broken :-\\\n const { groups = [], throttle, onSubmit } = props\n const name = groups.map(group => group + '.') + props.name\n const submitHandler = (throttle && onSubmit) ? createThrottled(onSubmit, isNaN(throttle) ? 200 : throttle) : onSubmit\n\n useEffect(() => {\n const { getFieldValue, setFieldValue, registerFieldValidator } = props\n const { setInitialValue, applyValueTransforms } = types(props, options)\n\n // don't override values that were set from passing a values prop to the form\n if(getFieldValue(name) === undefined) {\n // TODO: change setter to a getter and return a private `UNSET` symbol to indicate not to call the field setter\n // this allows us to set the default value with useState above and not have an initial render cycle without the default value\n // BUT... to get the default value of a select list, we need to render it first? dilemma....\n\n setInitialValue({\n // pass a setter function - radio buttons do not always want to set a value!\n set: value => setFieldValue(name, applyValueTransforms(value)),\n element: document.querySelector(`#${id}`)\n })\n }\n registerFieldValidator(updateValidationState)\n\n // TODO: need to unregister in case of dynamic form elements\n }, [])\n\n // ensure form values are updated to reflect passed `value` prop\n // this probably introduces some redundancy with the onChange handler below\n useUpdate(() => {\n const { value, setFieldValue } = props\n const { applyValueTransforms } = types(props, options)\n\n if(value !== previousValueProp) {\n setFieldValue(name, applyValueTransforms(value))\n }\n }, [props])\n\n const updateValidationState = useCallback((newValue, oldValues) => {\n const { getValidationMessage, getFieldValue, getFieldValues } = props\n const element = document.querySelector(`#${id}`)\n if(element) {\n const validationMessage = getValidationMessage && getValidationMessage(\n newValue === undefined ? getFieldValue(name) : newValue,\n oldValues || getFieldValues()\n )\n element.setCustomValidity?.(validationMessage || \"\")\n\n setFieldValidated(true)\n // this is a little hacky, but the simplest way I could think of to determine the\n // validity of the actual input element. :invalid is also not supported by enzyme\n const invalid = !!validationMessage || Boolean(document.querySelector(`#${id}:invalid`))\n setError(invalid)\n props.onValidated && props.onValidated(!invalid)\n }\n }, [props])\n\n // TODO: refactor bubbling to prop pattern\n const onChange = useCallback((...args) => {\n const [event] = args\n const { setFieldValue, onChange, submitOnChange } = props\n const { valueFromEvent } = options\n const { getOutputValue, applyValueTransforms } = types(props, options)\n\n const elementValue = valueFromEvent\n ? valueFromEvent.apply(null, args)\n : getOutputValue({ event })\n\n setFieldValue(name, applyValueTransforms(elementValue))\n\n if(event && event.target && event.target.checkValidity) {\n event.target.checkValidity()\n updateValidationState(applyValueTransforms(elementValue))\n }\n\n if(onChange) {\n onChange.apply(event.target, args)\n }\n\n if(submitOnChange && submitHandler) {\n // the setFieldValue above sets state on the Form component, used in the onSubmit handler\n // setting state requires an additional render cycle - we need to pass in the new value so it's set correctly\n submitHandler(undefined, { additionalValues: { [name]: applyValueTransforms(elementValue) } })\n }\n }, [props.setFieldValue, props.onChange, props.submitOnChange, props.setFieldValue, updateValidationState])\n\n const onBlur = (...args) => {\n const { submitOnBlur, onSubmit, onBlur } = props\n const [event] = args\n\n if(submitOnBlur) {\n onSubmit()\n }\n if(onBlur) {\n onBlur.apply(event.target, args)\n }\n }\n\n const onFocus = (...args) => {\n const { selectOnFocus, onFocus } = props\n const [event] = args\n const element = event.target\n\n const selectText = () => {\n element.selectionStart = 0\n element.selectionEnd = element.value.length\n }\n\n if(selectOnFocus) {\n selectText()\n setTimeout(selectText)\n }\n if(onFocus) {\n onFocus.apply(element, args)\n }\n }\n\n const onKeyDown = (...args) => {\n const { onKeyDown } = props\n const [event] = args\n const element = event.target\n \n if(props.numeric && !/[0-9-]/.exec(event.key) && ![null, 0, 8, 9, 13, 27, 35, 36, 37, 39, 46].includes(event.keyCode)) {\n event.preventDefault()\n }\n\n if(onKeyDown) {\n onKeyDown.apply(element, args)\n }\n }\n\n /* render */ {\n const { passErrorProp } = options\n const { getValueProps } = types(props, options)\n\n const {\n type, value, checked, defaultValue, numeric, getValidationMessage,\n onSubmit, registerFieldValidator, setFieldValue, getFieldValue, getFieldValues,\n submitOnChange, submitOnBlur, selectOnFocus, throttle, valid, onValidated,\n ...passThroughProps\n } = props\n const valueProps = getValueProps({ currentValue: getFieldValue(name) })\n const numericProps = (numeric && { type: 'number' })\n const typeProps = (type && { type })\n const errorProps = (passErrorProp && { error })\n const className = ((fieldValidated ? 'validated ' : '') + (props.className || '') || undefined)\n\n const finalProps = {\n id, name, className,\n ...passThroughProps, ...valueProps, ...numericProps, ...typeProps, ...errorProps,\n onChange, onFocus, onBlur, onKeyDown\n }\n\n return render(finalProps)\n }\n}"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"input.js","names":["_react","require","_objectPathImmutable","_usePrevious","_interopRequireDefault","_useUpdate","_inputTypes","_throttle2","_excluded","obj","__esModule","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","nextElementId","id","concat","_default","render","options","Input","props","Error","setFieldValue","_useState","useState","_useState2","fieldValidated","setFieldValidated","_useState3","_useState4","error","setError","_useState5","_useState6","previousValueProp","usePrevious","_props$groups","groups","throttle","onSubmit","map","group","submitHandler","createThrottled","isNaN","useEffect","getFieldValue","registerFieldValidator","_types","types","setInitialValue","applyValueTransforms","set","element","document","querySelector","updateValidationState","useUpdate","_types2","useCallback","newValue","oldValues","getValidationMessage","getFieldValues","_element$setCustomVal","validationMessage","get","setCustomValidity","invalid","Boolean","onValidated","onChange","_len","args","_key","event","submitOnChange","valueFromEvent","_types3","getOutputValue","elementValue","checkValidity","additionalValues","onBlur","submitOnBlur","_len2","_key2","onFocus","selectOnFocus","_len3","_key3","selectText","selectionStart","selectionEnd","setTimeout","onKeyDown","_len4","_key4","numeric","exec","includes","keyCode","preventDefault","passErrorProp","_types4","getValueProps","type","checked","defaultValue","valid","passThroughProps","valueProps","currentValue","numericProps","typeProps","errorProps","className","finalProps","exports"],"sources":["../src/input.js"],"sourcesContent":["import { useCallback, useState, useEffect } from 'react'\nimport { get } from 'object-path-immutable'\nimport usePrevious from './usePrevious'\nimport useUpdate from './useUpdate'\nimport types from './inputTypes'\nimport createThrottled from './throttle'\n\nconst nextElementId = (id => () => `react-forms-${++id}`)(0)\n\nexport default (render, options = {}) => function Input(props) {\n if (!props.name) throw new Error(\"You must provide a name prop to form components\")\n if (!props.setFieldValue) throw new Error(\"Input components must be contained within a Form component\")\n\n const [fieldValidated, setFieldValidated] = useState(false)\n const [error, setError] = useState(false)\n const [id] = useState(props.id || nextElementId())\n const previousValueProp = usePrevious(props.value)\n\n // this is currently broken :-\\\n const { groups = [], throttle, onSubmit } = props\n const name = groups.map(group => group + '.') + props.name\n const submitHandler = (throttle && onSubmit) ? createThrottled(onSubmit, isNaN(throttle) ? 200 : throttle) : onSubmit\n\n useEffect(() => {\n const { getFieldValue, setFieldValue, registerFieldValidator } = props\n const { setInitialValue, applyValueTransforms } = types(props, options)\n\n // don't override values that were set from passing a values prop to the form\n if(getFieldValue(name) === undefined) {\n // TODO: change setter to a getter and return a private `UNSET` symbol to indicate not to call the field setter\n // this allows us to set the default value with useState above and not have an initial render cycle without the default value\n // BUT... to get the default value of a select list, we need to render it first? dilemma....\n\n setInitialValue({\n // pass a setter function - radio buttons do not always want to set a value!\n set: value => setFieldValue(name, applyValueTransforms(value)),\n element: document.querySelector(`#${id}`)\n })\n }\n registerFieldValidator(updateValidationState)\n\n // TODO: need to unregister in case of dynamic form elements\n }, [])\n\n // ensure form values are updated to reflect passed `value` prop\n // this probably introduces some redundancy with the onChange handler below\n useUpdate(() => {\n const { value, setFieldValue } = props\n const { applyValueTransforms } = types(props, options)\n\n if(value !== previousValueProp) {\n setFieldValue(name, applyValueTransforms(value))\n }\n }, [props])\n\n const updateValidationState = useCallback((newValue, oldValues) => {\n const { getValidationMessage, getFieldValue, getFieldValues } = props\n const element = document.querySelector(`#${id}`)\n if(element) {\n const validationMessage = getValidationMessage && getValidationMessage(\n newValue === undefined ? (getFieldValue(name) || get(oldValues, name)) : newValue,\n oldValues || getFieldValues()\n )\n element.setCustomValidity?.(validationMessage || \"\")\n\n setFieldValidated(true)\n // this is a little hacky, but the simplest way I could think of to determine the\n // validity of the actual input element. :invalid is also not supported by enzyme\n const invalid = !!validationMessage || Boolean(document.querySelector(`#${id}:invalid`))\n setError(invalid)\n props.onValidated && props.onValidated(!invalid)\n }\n }, [props])\n\n // TODO: refactor bubbling to prop pattern\n const onChange = useCallback((...args) => {\n const [event] = args\n const { setFieldValue, onChange, submitOnChange } = props\n const { valueFromEvent } = options\n const { getOutputValue, applyValueTransforms } = types(props, options)\n\n const elementValue = valueFromEvent\n ? valueFromEvent.apply(null, args)\n : getOutputValue({ event })\n\n setFieldValue(name, applyValueTransforms(elementValue))\n\n if(event && event.target && event.target.checkValidity) {\n event.target.checkValidity()\n updateValidationState(applyValueTransforms(elementValue))\n }\n\n if(onChange) {\n onChange.apply(event.target, args)\n }\n\n if(submitOnChange && submitHandler) {\n // the setFieldValue above sets state on the Form component, used in the onSubmit handler\n // setting state requires an additional render cycle - we need to pass in the new value so it's set correctly\n submitHandler(undefined, { additionalValues: { [name]: applyValueTransforms(elementValue) } })\n }\n }, [props.setFieldValue, props.onChange, props.submitOnChange, props.setFieldValue, updateValidationState])\n\n const onBlur = (...args) => {\n const { submitOnBlur, onSubmit, onBlur } = props\n const [event] = args\n\n if(submitOnBlur) {\n onSubmit()\n }\n if(onBlur) {\n onBlur.apply(event.target, args)\n }\n }\n\n const onFocus = (...args) => {\n const { selectOnFocus, onFocus } = props\n const [event] = args\n const element = event.target\n\n const selectText = () => {\n element.selectionStart = 0\n element.selectionEnd = element.value.length\n }\n\n if(selectOnFocus) {\n selectText()\n setTimeout(selectText)\n }\n if(onFocus) {\n onFocus.apply(element, args)\n }\n }\n\n const onKeyDown = (...args) => {\n const { onKeyDown } = props\n const [event] = args\n const element = event.target\n \n if(props.numeric && !/[0-9-]/.exec(event.key) && ![null, 0, 8, 9, 13, 27, 35, 36, 37, 39, 46].includes(event.keyCode)) {\n event.preventDefault()\n }\n\n if(onKeyDown) {\n onKeyDown.apply(element, args)\n }\n }\n\n /* render */ {\n const { passErrorProp } = options\n const { getValueProps } = types(props, options)\n\n const {\n type, value, checked, defaultValue, numeric, getValidationMessage,\n onSubmit, registerFieldValidator, setFieldValue, getFieldValue, getFieldValues,\n submitOnChange, submitOnBlur, selectOnFocus, throttle, valid, onValidated,\n ...passThroughProps\n } = props\n const valueProps = getValueProps({ currentValue: getFieldValue(name) })\n const numericProps = (numeric && { type: 'number' })\n const typeProps = (type && { type })\n const errorProps = (passErrorProp && { error })\n const className = ((fieldValidated ? 'validated ' : '') + (props.className || '') || undefined)\n\n const finalProps = {\n id, name, className,\n ...passThroughProps, ...valueProps, ...numericProps, ...typeProps, ...errorProps,\n onChange, onFocus, onBlur, onKeyDown\n }\n\n return render(finalProps)\n }\n}"],"mappings":"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"}
|
package/package.json
CHANGED
package/src/input.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useCallback, useState, useEffect } from 'react'
|
|
2
|
+
import { get } from 'object-path-immutable'
|
|
2
3
|
import usePrevious from './usePrevious'
|
|
3
4
|
import useUpdate from './useUpdate'
|
|
4
5
|
import types from './inputTypes'
|
|
@@ -57,7 +58,7 @@ export default (render, options = {}) => function Input(props) {
|
|
|
57
58
|
const element = document.querySelector(`#${id}`)
|
|
58
59
|
if(element) {
|
|
59
60
|
const validationMessage = getValidationMessage && getValidationMessage(
|
|
60
|
-
newValue === undefined ? getFieldValue(name) : newValue,
|
|
61
|
+
newValue === undefined ? (getFieldValue(name) || get(oldValues, name)) : newValue,
|
|
61
62
|
oldValues || getFieldValues()
|
|
62
63
|
)
|
|
63
64
|
element.setCustomValidity?.(validationMessage || "")
|