@danderson00/react-forms 0.0.45 → 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/ErrorMessage.js.map +1 -1
- package/dist/Form.js +6 -5
- package/dist/Form.js.map +1 -1
- package/dist/Group.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/injectCss.js.map +1 -1
- package/dist/input.js +6 -4
- package/dist/input.js.map +1 -1
- package/dist/inputTypes.js.map +1 -1
- package/dist/styles.js.map +1 -1
- package/dist/submit.js +2 -2
- package/dist/submit.js.map +1 -1
- package/dist/throttle.js.map +1 -1
- package/dist/useForm.js.map +1 -1
- package/dist/useFormValues.js.map +1 -1
- package/dist/usePrevious.js.map +1 -1
- package/dist/useUpdate.js.map +1 -1
- package/package.json +3 -4
- package/src/Form.js +3 -3
- package/src/input.js +3 -2
package/dist/ErrorMessage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorMessage.js","names":["extractErrorMessage","error","hasOwnProperty","message","createElement","className","children"],"sources":["../src/ErrorMessage.js"],"sourcesContent":["import { createElement } from 'react'\n\nexport const extractErrorMessage = error => error\n ? (error.hasOwnProperty('stack') || error.hasOwnProperty('message'))\n ? error.message || 'An error occurred'\n : error\n : 'An error occurred'\n\nexport default ({ error }) => createElement('div', {\n className: 'react-forms-error',\n children: extractErrorMessage(error)\n})"],"mappings":";;;;;;AAAA;AAEO,
|
|
1
|
+
{"version":3,"file":"ErrorMessage.js","names":["_react","require","extractErrorMessage","error","hasOwnProperty","message","exports","_default","_ref","createElement","className","children"],"sources":["../src/ErrorMessage.js"],"sourcesContent":["import { createElement } from 'react'\n\nexport const extractErrorMessage = error => error\n ? (error.hasOwnProperty('stack') || error.hasOwnProperty('message'))\n ? error.message || 'An error occurred'\n : error\n : 'An error occurred'\n\nexport default ({ error }) => createElement('div', {\n className: 'react-forms-error',\n children: extractErrorMessage(error)\n})"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,KAAK;EAAA,OAAIA,KAAK,GAC5CA,KAAK,CAACC,cAAc,CAAC,OAAO,CAAC,IAAID,KAAK,CAACC,cAAc,CAAC,SAAS,CAAC,GAC/DD,KAAK,CAACE,OAAO,IAAI,mBAAmB,GACpCF,KAAK,GACP,mBAAmB;AAAA;AAAAG,OAAA,CAAAJ,mBAAA,GAAAA,mBAAA;AAAA,IAAAK,QAAA,GAER,SAAAA,SAAAC,IAAA;EAAA,IAAGL,KAAK,GAAAK,IAAA,CAALL,KAAK;EAAA,oBAAO,IAAAM,oBAAa,EAAC,KAAK,EAAE;IACjDC,SAAS,EAAE,mBAAmB;IAC9BC,QAAQ,EAAET,mBAAmB,CAACC,KAAK;EACrC,CAAC,CAAC;AAAA;AAAAG,OAAA,cAAAC,QAAA"}
|
package/dist/Form.js
CHANGED
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports["default"] = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _objectPathImmutable = require("object-path-immutable");
|
|
10
|
-
var _excluded = ["resetOnSubmit", "row", "gap"];
|
|
10
|
+
var _excluded = ["resetOnSubmit", "row", "gap", "values"];
|
|
11
11
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
12
12
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
13
13
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -20,8 +20,8 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
|
|
|
20
20
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
21
21
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
22
22
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
24
|
-
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0)
|
|
23
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
24
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
25
25
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
26
26
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
27
27
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
@@ -32,8 +32,9 @@ var Form = function Form(ContextProvider) {
|
|
|
32
32
|
var resetOnSubmit = _ref.resetOnSubmit,
|
|
33
33
|
row = _ref.row,
|
|
34
34
|
gap = _ref.gap,
|
|
35
|
+
values = _ref.values,
|
|
35
36
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
36
|
-
var _useState = (0, _react.useState)(
|
|
37
|
+
var _useState = (0, _react.useState)(values || {}),
|
|
37
38
|
_useState2 = _slicedToArray(_useState, 2),
|
|
38
39
|
fieldValues = _useState2[0],
|
|
39
40
|
setFieldValues = _useState2[1];
|
|
@@ -95,7 +96,7 @@ var Form = function Form(ContextProvider) {
|
|
|
95
96
|
};
|
|
96
97
|
var reset = function reset() {
|
|
97
98
|
if (resetOnSubmit) {
|
|
98
|
-
setFieldValues(
|
|
99
|
+
setFieldValues(values || {});
|
|
99
100
|
}
|
|
100
101
|
};
|
|
101
102
|
try {
|
package/dist/Form.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","names":["Form","ContextProvider","additionalContext","ErrorMessage","resetOnSubmit","row","gap","props","useState","values","fieldValues","setFieldValues","useReducer","validators","validator","fieldValidators","registerFieldValidator","error","setError","valid","setValid","form","createRef","useEffect","current","checkValidity","getFieldValue","useCallback","path","get","getFieldValues","mapFieldValues","target","Object","keys","reduce","name","set","setFieldValue","value","previousValues","onSubmit","e","additionalValues","validate","forEach","setFieldValidated","undefined","interactiveElements","querySelectorAll","setFormDisabled","disabled","x","reset","checkResultForError","result","success","message","then","preventDefault","stopPropagation","classNames","className","push","mergedAdditionalContext","property","createElement","join","noValidate","ref","style","children","key","type","visibility","position"],"sources":["../src/Form.js"],"sourcesContent":["import { createElement, createRef, useCallback, useEffect, useReducer, useState } from 'react'\nimport { get, set } from 'object-path-immutable'\n\nconst Form = (ContextProvider, additionalContext = {}, ErrorMessage) => (\n ({ resetOnSubmit, row, gap, ...props }) => {\n const [fieldValues, setFieldValues] = useState(props.values || {})\n const [fieldValidators, registerFieldValidator] = useReducer((validators, validator) => [...validators, validator], [])\n const [error, setError] = useState()\n const [valid, setValid] = useState()\n const form = createRef()\n\n useEffect(() => {\n if(form.current) {\n setValid(form.current.checkValidity())\n }\n }, [form.current])\n\n const getFieldValue = useCallback(path => get(fieldValues, path), [fieldValues])\n const getFieldValues = useCallback(() => fieldValues, [fieldValues])\n const mapFieldValues = target => Object.keys(target).reduce(\n (values, name) => set(values, name, target[name]),\n {}\n )\n\n const setFieldValue = (path, value) => {\n setFieldValues(previousValues => set(previousValues, path, value))\n if(form.current) {\n setValid(form.current.checkValidity())\n }\n }\n\n const onSubmit = useCallback((e, { additionalValues, validate } = {}) => {\n if(validate !== false) {\n fieldValidators.forEach(setFieldValidated => setFieldValidated(undefined, fieldValues))\n }\n\n if((validate === false || form.current.checkValidity()) && props.onSubmit) {\n setError(undefined)\n\n const interactiveElements = form.current.querySelectorAll('input,button,textarea,select')\n const setFormDisabled = disabled => interactiveElements.forEach(x => x.disabled = disabled)\n\n const reset = () => {\n if(resetOnSubmit) {\n setFieldValues(props.values || {})\n }\n }\n\n try {\n const checkResultForError = result => {\n if(result && (result.success === false || result.error)) {\n setError(result.error || result.message || 'Form submission failed')\n } else {\n reset()\n }\n return result\n }\n\n const result = props.onSubmit(mapFieldValues({ ...fieldValues, ...additionalValues }))\n if(result && typeof result.then === 'function') {\n setFormDisabled(true)\n result\n .then(checkResultForError)\n .catch(setError)\n .finally(() => setFormDisabled(false))\n } else {\n reset()\n }\n } catch(error) {\n setError(error)\n }\n }\n\n e && e.preventDefault && e.preventDefault()\n e && e.stopPropagation && e.stopPropagation()\n }, [props, fieldValues])\n\n const classNames = ['react-forms', props.className]\n if(row) {\n classNames.push('react-forms-row')\n }\n\n const mergedAdditionalContext = Object.keys(additionalContext).reduce(\n (result, property) => ({ ...result, [property]: props[property] || additionalContext[property] }),\n {}\n )\n\n return (\n createElement('form', {\n ...props,\n className: classNames.join(' '),\n noValidate: true,\n onSubmit: onSubmit,\n ref: form,\n ...(gap && { style: { gap } }),\n children: [\n createElement(ContextProvider, {\n ...props,\n key: 'context',\n value: {\n registerFieldValidator,\n setFieldValue,\n getFieldValue,\n getFieldValues,\n onSubmit,\n valid,\n ...mergedAdditionalContext\n }\n }),\n error && createElement(ErrorMessage, { key: 'error', error }),\n createElement('input', {\n key: 'submit',\n type: 'submit',\n style: {\n visibility: 'hidden',\n position: 'absolute'\n }\n }),\n ]\n })\n )\n }\n)\nexport default Form"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Form.js","names":["_react","require","_objectPathImmutable","_excluded","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","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","prototype","toString","slice","constructor","name","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","err","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Form","ContextProvider","additionalContext","ErrorMessage","_ref","resetOnSubmit","row","gap","values","props","_useState","useState","_useState2","fieldValues","setFieldValues","_useReducer","useReducer","validators","validator","concat","_useReducer2","fieldValidators","registerFieldValidator","_useState3","_useState4","error","setError","_useState5","_useState6","valid","setValid","form","createRef","useEffect","current","checkValidity","getFieldValue","useCallback","path","get","getFieldValues","mapFieldValues","reduce","set","setFieldValue","previousValues","onSubmit","e","_ref2","additionalValues","validate","setFieldValidated","interactiveElements","querySelectorAll","setFormDisabled","disabled","x","reset","checkResultForError","result","success","message","then","preventDefault","stopPropagation","classNames","className","mergedAdditionalContext","property","createElement","join","noValidate","ref","style","children","type","visibility","position","_default","exports"],"sources":["../src/Form.js"],"sourcesContent":["import { createElement, createRef, useCallback, useEffect, useReducer, useState } from 'react'\nimport { get, set } from 'object-path-immutable'\n\nconst Form = (ContextProvider, additionalContext = {}, ErrorMessage) => (\n ({ resetOnSubmit, row, gap, values, ...props }) => {\n const [fieldValues, setFieldValues] = useState(values || {})\n const [fieldValidators, registerFieldValidator] = useReducer((validators, validator) => [...validators, validator], [])\n const [error, setError] = useState()\n const [valid, setValid] = useState()\n const form = createRef()\n\n useEffect(() => {\n if(form.current) {\n setValid(form.current.checkValidity())\n }\n }, [form.current])\n\n const getFieldValue = useCallback(path => get(fieldValues, path), [fieldValues])\n const getFieldValues = useCallback(() => fieldValues, [fieldValues])\n const mapFieldValues = target => Object.keys(target).reduce(\n (values, name) => set(values, name, target[name]),\n {}\n )\n\n const setFieldValue = (path, value) => {\n setFieldValues(previousValues => set(previousValues, path, value))\n if(form.current) {\n setValid(form.current.checkValidity())\n }\n }\n\n const onSubmit = useCallback((e, { additionalValues, validate } = {}) => {\n if(validate !== false) {\n fieldValidators.forEach(setFieldValidated => setFieldValidated(undefined, fieldValues))\n }\n\n if((validate === false || form.current.checkValidity()) && props.onSubmit) {\n setError(undefined)\n\n const interactiveElements = form.current.querySelectorAll('input,button,textarea,select')\n const setFormDisabled = disabled => interactiveElements.forEach(x => x.disabled = disabled)\n\n const reset = () => {\n if(resetOnSubmit) {\n setFieldValues(values || {})\n }\n }\n\n try {\n const checkResultForError = result => {\n if(result && (result.success === false || result.error)) {\n setError(result.error || result.message || 'Form submission failed')\n } else {\n reset()\n }\n return result\n }\n\n const result = props.onSubmit(mapFieldValues({ ...fieldValues, ...additionalValues }))\n if(result && typeof result.then === 'function') {\n setFormDisabled(true)\n result\n .then(checkResultForError)\n .catch(setError)\n .finally(() => setFormDisabled(false))\n } else {\n reset()\n }\n } catch(error) {\n setError(error)\n }\n }\n\n e && e.preventDefault && e.preventDefault()\n e && e.stopPropagation && e.stopPropagation()\n }, [props, fieldValues])\n\n const classNames = ['react-forms', props.className]\n if(row) {\n classNames.push('react-forms-row')\n }\n\n const mergedAdditionalContext = Object.keys(additionalContext).reduce(\n (result, property) => ({ ...result, [property]: props[property] || additionalContext[property] }),\n {}\n )\n\n return (\n createElement('form', {\n ...props,\n className: classNames.join(' '),\n noValidate: true,\n onSubmit: onSubmit,\n ref: form,\n ...(gap && { style: { gap } }),\n children: [\n createElement(ContextProvider, {\n ...props,\n key: 'context',\n value: {\n registerFieldValidator,\n setFieldValue,\n getFieldValue,\n getFieldValues,\n onSubmit,\n valid,\n ...mergedAdditionalContext\n }\n }),\n error && createElement(ErrorMessage, { key: 'error', error }),\n createElement('input', {\n key: 'submit',\n type: 'submit',\n style: {\n visibility: 'hidden',\n position: 'absolute'\n }\n }),\n ]\n })\n )\n }\n)\nexport default Form"],"mappings":"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"}
|
package/dist/Group.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Group.js","names":["Group","formContext","name","props","Error","useContext","groups","context","createElement","Provider","
|
|
1
|
+
{"version":3,"file":"Group.js","names":["_react","require","_excluded","_excluded2","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","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","sourceKeys","Group","formContext","_ref","name","props","Error","_useContext","useContext","_useContext$groups","groups","context","createElement","Provider","concat","_default","exports"],"sources":["../src/Group.js"],"sourcesContent":["import { createElement, useContext } from 'react'\n\nconst Group = formContext => ({ name, ...props }) => {\n if (!name) throw new Error(\"You must provide a name prop to form components\")\n const { groups = [], ...context } = useContext(formContext)\n\n return createElement(formContext.Provider, {\n ...props,\n value: {\n ...context,\n groups: groups.concat(name)\n }\n })\n}\nexport default Group"],"mappings":"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"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["context","createContext","createConsumer","ConsumerComponent","props","createElement","Consumer","children","createRawConsumer","registerFieldValidator","setFieldValue","getFieldValue","Form","FormProvider","Provider","ErrorMessage","Group","GroupProvider","Submit","submit","Input","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_Form","_interopRequireDefault","_Group","_ErrorMessage","_submit","_input","_useFormValues","_useForm","_excluded","obj","__esModule","_typeof","Symbol","iterator","constructor","prototype","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","TypeError","Number","context","createContext","exports","createConsumer","ConsumerComponent","props","createElement","Consumer","children","createRawConsumer","_ref","registerFieldValidator","setFieldValue","getFieldValue","Form","FormProvider","Provider","ErrorMessage","Group","GroupProvider","Submit","submit","Input","Textarea","Select","type","wrapInput","component","options","wrapSubmit","useFormValues","useFormValuesImpl","useForm","useFormImpl"],"sources":["../src/index.js"],"sourcesContent":["import { createContext, createElement } from 'react'\nimport FormProvider from './Form'\nimport GroupProvider from './Group'\nimport ErrorMessage from './ErrorMessage'\nimport submit from './submit'\nimport input from './input'\nimport useFormValuesImpl from './useFormValues'\nimport useFormImpl from './useForm'\nimport './styles'\n\nexport const context = createContext({})\n\nconst createConsumer = ConsumerComponent => props => createElement(\n context.Consumer,\n { children: context => createElement(ConsumerComponent, { ...context, ...props }) }\n)\n\nexport const createRawConsumer = ConsumerComponent => (\n props => createElement(\n context.Consumer,\n { children: ({ registerFieldValidator, setFieldValue, getFieldValue, ...context }) => (\n createElement(ConsumerComponent, { ...context, ...props })\n )}\n )\n)\n\nexport const Form = FormProvider(context.Provider, {}, ErrorMessage)\nexport const Group = GroupProvider(context)\nexport const Submit = createConsumer(submit(props => createElement('button', props)))\n\nexport const Input = createConsumer(input(props => createElement('input', props)))\nexport const Textarea = createConsumer(input(props => createElement('textarea', props)))\nexport const Select = createConsumer(input(props => createElement('select', props), { type: 'select' }))\n\nexport const wrapInput = (component, options) => createConsumer(input(props => createElement(component, props), options))\nexport const wrapSubmit = component => createConsumer(submit(props => createElement(component, props)))\n\nexport const useFormValues = useFormValuesImpl(context)\nexport const useForm = useFormImpl(context)\n\nexport { FormProvider }"],"mappings":"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"}
|
package/dist/injectCss.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectCss.js","names":["injectCss","id","css","document","querySelector","head","getElementsByTagName","style","createElement","type","appendChild","styleSheet","cssText","createTextNode"],"sources":["../src/injectCss.js"],"sourcesContent":["export default function injectCss(id, css) {\n if (!css || typeof document === 'undefined' || document.querySelector(`#${id}`)) return\n\n const head = document.head || document.getElementsByTagName('head')[0]\n const style = document.createElement('style')\n style.id = id\n style.type = 'text/css'\n\n head.appendChild(style)\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css\n } else {\n style.appendChild(document.createTextNode(css))\n }\n}"],"mappings":";;;;;;AAAe,SAASA,
|
|
1
|
+
{"version":3,"file":"injectCss.js","names":["injectCss","id","css","document","querySelector","concat","head","getElementsByTagName","style","createElement","type","appendChild","styleSheet","cssText","createTextNode"],"sources":["../src/injectCss.js"],"sourcesContent":["export default function injectCss(id, css) {\n if (!css || typeof document === 'undefined' || document.querySelector(`#${id}`)) return\n\n const head = document.head || document.getElementsByTagName('head')[0]\n const style = document.createElement('style')\n style.id = id\n style.type = 'text/css'\n\n head.appendChild(style)\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css\n } else {\n style.appendChild(document.createTextNode(css))\n }\n}"],"mappings":";;;;;;AAAe,SAASA,SAASA,CAACC,EAAE,EAAEC,GAAG,EAAE;EACzC,IAAI,CAACA,GAAG,IAAI,OAAOC,QAAQ,KAAK,WAAW,IAAIA,QAAQ,CAACC,aAAa,KAAAC,MAAA,CAAKJ,EAAE,CAAE,CAAC,EAAE;EAEjF,IAAMK,IAAI,GAAGH,QAAQ,CAACG,IAAI,IAAIH,QAAQ,CAACI,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;EACtE,IAAMC,KAAK,GAAGL,QAAQ,CAACM,aAAa,CAAC,OAAO,CAAC;EAC7CD,KAAK,CAACP,EAAE,GAAGA,EAAE;EACbO,KAAK,CAACE,IAAI,GAAG,UAAU;EAEvBJ,IAAI,CAACK,WAAW,CAACH,KAAK,CAAC;EAEvB,IAAIA,KAAK,CAACI,UAAU,EAAE;IACpBJ,KAAK,CAACI,UAAU,CAACC,OAAO,GAAGX,GAAG;EAChC,CAAC,MAAM;IACLM,KAAK,CAACG,WAAW,CAACR,QAAQ,CAACW,cAAc,CAACZ,GAAG,CAAC,CAAC;EACjD;AACF"}
|
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"));
|
|
@@ -22,8 +23,8 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
|
|
|
22
23
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
23
24
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
24
25
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
25
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
26
|
-
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0)
|
|
26
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
27
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
27
28
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
28
29
|
var nextElementId = function (id) {
|
|
29
30
|
return function () {
|
|
@@ -101,8 +102,9 @@ var _default = function _default(render) {
|
|
|
101
102
|
getFieldValues = props.getFieldValues;
|
|
102
103
|
var element = document.querySelector("#".concat(id));
|
|
103
104
|
if (element) {
|
|
104
|
-
var
|
|
105
|
-
|
|
105
|
+
var _element$setCustomVal;
|
|
106
|
+
var validationMessage = getValidationMessage && getValidationMessage(newValue === undefined ? getFieldValue(name) || (0, _objectPathImmutable.get)(oldValues, name) : newValue, oldValues || getFieldValues());
|
|
107
|
+
(_element$setCustomVal = element.setCustomValidity) === null || _element$setCustomVal === void 0 ? void 0 : _element$setCustomVal.call(element, validationMessage || "");
|
|
106
108
|
setFieldValidated(true);
|
|
107
109
|
// this is a little hacky, but the simplest way I could think of to determine the
|
|
108
110
|
// validity of the actual input element. :invalid is also not supported by enzyme
|
package/dist/input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","names":["nextElementId","id","render","options","Input","props","name","Error","setFieldValue","useState","fieldValidated","setFieldValidated","error","setError","previousValueProp","usePrevious","value","groups","throttle","onSubmit","map","group","submitHandler","createThrottled","isNaN","useEffect","getFieldValue","registerFieldValidator","types","setInitialValue","applyValueTransforms","undefined","set","element","document","querySelector","updateValidationState","useUpdate","useCallback","newValue","oldValues","getValidationMessage","getFieldValues","validationMessage","setCustomValidity","invalid","Boolean","onValidated","onChange","args","event","submitOnChange","valueFromEvent","getOutputValue","elementValue","apply","target","checkValidity","additionalValues","onBlur","submitOnBlur","onFocus","selectOnFocus","selectText","selectionStart","selectionEnd","length","setTimeout","onKeyDown","numeric","exec","key","includes","keyCode","preventDefault","passErrorProp","getValueProps","type","checked","defaultValue","valid","passThroughProps","valueProps","currentValue","numericProps","typeProps","errorProps","className","finalProps"],"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/dist/inputTypes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputTypes.js","names":["resolveValue","value","args","apply","props","options","type","checked","defaultValue","applyValueTransforms","numeric","isNaN","defaultType","setInitialValue","set","undefined","getOutputValue","event","target","Error","getValueProps","currentValue","checkboxValue","Boolean","types","text","radio","checkbox","select","element","length"],"sources":["../src/inputTypes.js"],"sourcesContent":["const resolveValue = (value, args) => typeof value === 'function' ? value.apply(null, args) : value\n\nexport default (props, options) => {\n const { type, checked, value, defaultValue } = props\n\n const applyValueTransforms = value => ((props.type === 'number' || props.numeric) && !isNaN(+value) && value !== '') ? +value : value\n\n const defaultType = {\n setInitialValue: ({ set }) => {\n if(value !== undefined) {\n set(value)\n } else if (defaultValue !== undefined) {\n set(defaultValue)\n } else if (options.defaultValue !== undefined) {\n set(resolveValue(options.defaultValue, [props]))\n } else {\n set(undefined)\n }\n },\n getOutputValue: ({ event }) => {\n if (event.target && event.target.value !== undefined) {\n return event.target.value\n } else if (event.value !== undefined) {\n return event.value\n } else {\n throw new Error(\"Unable to determine input value from event\")\n }\n },\n getValueProps: ({ currentValue }) => ({\n value: currentValue === undefined ? '' : currentValue\n })\n }\n\n const checkboxValue = (checked, value) => (value === undefined\n ? Boolean(checked)\n : checked ? value : undefined\n )\n\n const types = {\n text: defaultType,\n radio: {\n setInitialValue: ({ set }) => checked && set(value),\n getOutputValue: () => value,\n getValueProps: ({ currentValue }) => ({ checked: applyValueTransforms(value) === currentValue })\n },\n checkbox: {\n setInitialValue: ({ set }) => set(checkboxValue(checked, value)),\n getOutputValue: ({ event }) => checkboxValue(event.target.checked, value),\n getValueProps: ({ currentValue }) => ({ checked: Boolean(currentValue) })\n },\n select: {\n ...defaultType,\n setInitialValue: ({ set, element }) => {\n set(value || defaultValue ||\n (props.options && props.options.length > 0 && props.options[0]) || // this probably should come out - is it the right behavior for all browsers? it's here to keep 1 unit test happy?\n element && element.value || '' // this *should* work in all browsers (except jsdom)...\n )\n }\n }\n }\n\n return { ...(types[options.type || type] || types.text), applyValueTransforms }\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAMA,YAAY,GAAG,SAAfA,
|
|
1
|
+
{"version":3,"file":"inputTypes.js","names":["resolveValue","value","args","apply","_default","props","options","type","checked","defaultValue","applyValueTransforms","numeric","isNaN","defaultType","setInitialValue","_ref","set","undefined","getOutputValue","_ref2","event","target","Error","getValueProps","_ref3","currentValue","checkboxValue","Boolean","types","text","radio","_ref4","_ref5","checkbox","_ref6","_ref7","_ref8","select","_objectSpread","_ref9","element","length","exports"],"sources":["../src/inputTypes.js"],"sourcesContent":["const resolveValue = (value, args) => typeof value === 'function' ? value.apply(null, args) : value\n\nexport default (props, options) => {\n const { type, checked, value, defaultValue } = props\n\n const applyValueTransforms = value => ((props.type === 'number' || props.numeric) && !isNaN(+value) && value !== '') ? +value : value\n\n const defaultType = {\n setInitialValue: ({ set }) => {\n if(value !== undefined) {\n set(value)\n } else if (defaultValue !== undefined) {\n set(defaultValue)\n } else if (options.defaultValue !== undefined) {\n set(resolveValue(options.defaultValue, [props]))\n } else {\n set(undefined)\n }\n },\n getOutputValue: ({ event }) => {\n if (event.target && event.target.value !== undefined) {\n return event.target.value\n } else if (event.value !== undefined) {\n return event.value\n } else {\n throw new Error(\"Unable to determine input value from event\")\n }\n },\n getValueProps: ({ currentValue }) => ({\n value: currentValue === undefined ? '' : currentValue\n })\n }\n\n const checkboxValue = (checked, value) => (value === undefined\n ? Boolean(checked)\n : checked ? value : undefined\n )\n\n const types = {\n text: defaultType,\n radio: {\n setInitialValue: ({ set }) => checked && set(value),\n getOutputValue: () => value,\n getValueProps: ({ currentValue }) => ({ checked: applyValueTransforms(value) === currentValue })\n },\n checkbox: {\n setInitialValue: ({ set }) => set(checkboxValue(checked, value)),\n getOutputValue: ({ event }) => checkboxValue(event.target.checked, value),\n getValueProps: ({ currentValue }) => ({ checked: Boolean(currentValue) })\n },\n select: {\n ...defaultType,\n setInitialValue: ({ set, element }) => {\n set(value || defaultValue ||\n (props.options && props.options.length > 0 && props.options[0]) || // this probably should come out - is it the right behavior for all browsers? it's here to keep 1 unit test happy?\n element && element.value || '' // this *should* work in all browsers (except jsdom)...\n )\n }\n }\n }\n\n return { ...(types[options.type || type] || types.text), applyValueTransforms }\n}\n"],"mappings":"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"}
|
package/dist/styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","names":["injectCss"],"sources":["../src/styles.js"],"sourcesContent":["import injectCss from './injectCss'\n\ninjectCss('react-forms-styles', `\n.react-forms {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n.react-forms-row {\n flex-direction: row;\n align-items: flex-start;\n}\n\n.react-forms-error {\n color: #f44336;\n}\n`)\n\n\n"],"mappings":";;AAAA;AAAmC;AAEnC,
|
|
1
|
+
{"version":3,"file":"styles.js","names":["_injectCss","_interopRequireDefault","require","obj","__esModule","injectCss"],"sources":["../src/styles.js"],"sourcesContent":["import injectCss from './injectCss'\n\ninjectCss('react-forms-styles', `\n.react-forms {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n.react-forms-row {\n flex-direction: row;\n align-items: flex-start;\n}\n\n.react-forms-error {\n color: #f44336;\n}\n`)\n\n\n"],"mappings":";;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAmC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAEnC,IAAAE,qBAAS,EAAC,oBAAoB,6NAe7B,CAAC"}
|
package/dist/submit.js
CHANGED
|
@@ -17,8 +17,8 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
|
|
|
17
17
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
18
18
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
19
19
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
20
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
21
|
-
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0)
|
|
20
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
21
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
22
22
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
23
23
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
24
24
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
package/dist/submit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submit.js","names":["render","Submit","props","onSubmit","Error","registerFieldValidator","setFieldValue","getFieldValue","getFieldValues","valid","validate","disableInvalid","values","propsToPass","useState","executing","setExecuting","onClick","e","result","additionalValues","finalProps","disabled"],"sources":["../src/submit.js"],"sourcesContent":["import React, { useState } from 'react'\n\nexport default render => function Submit(props) {\n if(!props.onSubmit) throw new Error('Button components must be contained within a Form component')\n\n const {\n onSubmit, registerFieldValidator, setFieldValue, getFieldValue, getFieldValues,\n valid, validate, disableInvalid, values, ...propsToPass\n } = props\n\n // TODO: set executing when form is triggered by enter key\n const [executing, setExecuting] = useState(false)\n\n const onClick = e => {\n const result = onSubmit(e, { validate, additionalValues: values })\n if(result && result.finally && typeof result.finally === 'function') {\n setExecuting(true)\n result.finally(() => setExecuting(false))\n }\n }\n\n const finalProps = {\n ...propsToPass,\n onClick,\n disabled: props.disabled || executing || (disableInvalid && !valid)\n }\n\n return render(finalProps)\n}\n"],"mappings":";;;;;;;AAAA;AAAuC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"submit.js","names":["_react","_interopRequireWildcard","require","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","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","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_default","render","Submit","props","onSubmit","Error","registerFieldValidator","setFieldValue","getFieldValue","getFieldValues","valid","validate","disableInvalid","values","propsToPass","_useState","useState","_useState2","executing","setExecuting","onClick","e","result","additionalValues","finalProps","disabled","exports"],"sources":["../src/submit.js"],"sourcesContent":["import React, { useState } from 'react'\n\nexport default render => function Submit(props) {\n if(!props.onSubmit) throw new Error('Button components must be contained within a Form component')\n\n const {\n onSubmit, registerFieldValidator, setFieldValue, getFieldValue, getFieldValues,\n valid, validate, disableInvalid, values, ...propsToPass\n } = props\n\n // TODO: set executing when form is triggered by enter key\n const [executing, setExecuting] = useState(false)\n\n const onClick = e => {\n const result = onSubmit(e, { validate, additionalValues: values })\n if(result && result.finally && typeof result.finally === 'function') {\n setExecuting(true)\n result.finally(() => setExecuting(false))\n }\n }\n\n const finalProps = {\n ...propsToPass,\n onClick,\n disabled: props.disabled || executing || (disableInvalid && !valid)\n }\n\n return render(finalProps)\n}\n"],"mappings":"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"}
|
package/dist/throttle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttle.js","names":["target","delay","timeout","args","clearTimeout","setTimeout"],"sources":["../src/throttle.js"],"sourcesContent":["export default (target, delay = 200) => {\n let timeout\n\n return (...args) => {\n clearTimeout(timeout)\n timeout = setTimeout(\n () => target(...args),\n delay\n )\n }\n}"],"mappings":";;;;;;eAAe,
|
|
1
|
+
{"version":3,"file":"throttle.js","names":["_default","target","delay","arguments","length","undefined","timeout","_len","args","Array","_key","clearTimeout","setTimeout","apply","exports"],"sources":["../src/throttle.js"],"sourcesContent":["export default (target, delay = 200) => {\n let timeout\n\n return (...args) => {\n clearTimeout(timeout)\n timeout = setTimeout(\n () => target(...args),\n delay\n )\n }\n}"],"mappings":";;;;;;eAAe,SAAAA,SAACC,MAAM,EAAkB;EAAA,IAAhBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EACjC,IAAIG,OAAO;EAEX,OAAO,YAAa;IAAA,SAAAC,IAAA,GAAAJ,SAAA,CAAAC,MAAA,EAATI,IAAI,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAJF,IAAI,CAAAE,IAAA,IAAAP,SAAA,CAAAO,IAAA;IAAA;IACbC,YAAY,CAACL,OAAO,CAAC;IACrBA,OAAO,GAAGM,UAAU,CAClB;MAAA,OAAMX,MAAM,CAAAY,KAAA,SAAIL,IAAI,CAAC;IAAA,GACrBN,KACF,CAAC;EACH,CAAC;AACH,CAAC;AAAAY,OAAA,cAAAd,QAAA"}
|
package/dist/useForm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useForm.js","names":["context","useForm","useContext","onSubmit","getFieldValues","submit","options","undefined","values"],"sources":["../src/useForm.js"],"sourcesContent":["import { useContext } from 'react'\n\nexport default context => function useForm() {\n const { onSubmit, getFieldValues } = useContext(context)\n\n return {\n submit: options => onSubmit(undefined, options),\n values: () => getFieldValues()\n }\n}"],"mappings":";;;;;;AAAA;AAAkC,
|
|
1
|
+
{"version":3,"file":"useForm.js","names":["_react","require","_default","context","useForm","_useContext","useContext","onSubmit","getFieldValues","submit","options","undefined","values","exports"],"sources":["../src/useForm.js"],"sourcesContent":["import { useContext } from 'react'\n\nexport default context => function useForm() {\n const { onSubmit, getFieldValues } = useContext(context)\n\n return {\n submit: options => onSubmit(undefined, options),\n values: () => getFieldValues()\n }\n}"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAkC,IAAAC,QAAA,GAEnB,SAAAA,SAAAC,OAAO;EAAA,OAAI,SAASC,OAAOA,CAAA,EAAG;IAC3C,IAAAC,WAAA,GAAqC,IAAAC,iBAAU,EAACH,OAAO,CAAC;MAAhDI,QAAQ,GAAAF,WAAA,CAARE,QAAQ;MAAEC,cAAc,GAAAH,WAAA,CAAdG,cAAc;IAEhC,OAAO;MACLC,MAAM,EAAE,SAAAA,OAAAC,OAAO;QAAA,OAAIH,QAAQ,CAACI,SAAS,EAAED,OAAO,CAAC;MAAA;MAC/CE,MAAM,EAAE,SAAAA,OAAA;QAAA,OAAMJ,cAAc,CAAC,CAAC;MAAA;IAChC,CAAC;EACH,CAAC;AAAA;AAAAK,OAAA,cAAAX,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFormValues.js","names":["context","useFormValues","useContext","getFieldValues"],"sources":["../src/useFormValues.js"],"sourcesContent":["import { useContext } from 'react'\n\nexport default context => function useFormValues() {\n return useContext(context).getFieldValues()\n}"],"mappings":";;;;;;AAAA;AAAkC,
|
|
1
|
+
{"version":3,"file":"useFormValues.js","names":["_react","require","_default","context","useFormValues","useContext","getFieldValues","exports"],"sources":["../src/useFormValues.js"],"sourcesContent":["import { useContext } from 'react'\n\nexport default context => function useFormValues() {\n return useContext(context).getFieldValues()\n}"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAkC,IAAAC,QAAA,GAEnB,SAAAA,SAAAC,OAAO;EAAA,OAAI,SAASC,aAAaA,CAAA,EAAG;IACjD,OAAO,IAAAC,iBAAU,EAACF,OAAO,CAAC,CAACG,cAAc,CAAC,CAAC;EAC7C,CAAC;AAAA;AAAAC,OAAA,cAAAL,QAAA"}
|
package/dist/usePrevious.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePrevious.js","names":["usePrevious","value","ref","useRef","useEffect","current"],"sources":["../src/usePrevious.js"],"sourcesContent":["import { useRef, useEffect } from 'react'\n\nexport default function usePrevious(value) {\n const ref = useRef()\n useEffect(() => {\n ref.current = value\n })\n return ref.current\n}"],"mappings":";;;;;;AAAA;AAEe,
|
|
1
|
+
{"version":3,"file":"usePrevious.js","names":["_react","require","usePrevious","value","ref","useRef","useEffect","current"],"sources":["../src/usePrevious.js"],"sourcesContent":["import { useRef, useEffect } from 'react'\n\nexport default function usePrevious(value) {\n const ref = useRef()\n useEffect(() => {\n ref.current = value\n })\n return ref.current\n}"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEe,SAASC,WAAWA,CAACC,KAAK,EAAE;EACzC,IAAMC,GAAG,GAAG,IAAAC,aAAM,EAAC,CAAC;EACpB,IAAAC,gBAAS,EAAC,YAAM;IACdF,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACrB,CAAC,CAAC;EACF,OAAOC,GAAG,CAACG,OAAO;AACpB"}
|
package/dist/useUpdate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUpdate.js","names":["useUpdate","hook","inputs","didMountRef","useRef","useEffect","current"],"sources":["../src/useUpdate.js"],"sourcesContent":["import { useRef, useEffect } from 'react'\n\nexport default function useUpdate(hook, inputs) {\n const didMountRef = useRef(false)\n\n useEffect(() => {\n if (didMountRef.current)\n hook()\n else\n didMountRef.current = true\n }, inputs)\n}"],"mappings":";;;;;;AAAA;AAEe,SAASA,
|
|
1
|
+
{"version":3,"file":"useUpdate.js","names":["_react","require","useUpdate","hook","inputs","didMountRef","useRef","useEffect","current"],"sources":["../src/useUpdate.js"],"sourcesContent":["import { useRef, useEffect } from 'react'\n\nexport default function useUpdate(hook, inputs) {\n const didMountRef = useRef(false)\n\n useEffect(() => {\n if (didMountRef.current)\n hook()\n else\n didMountRef.current = true\n }, inputs)\n}"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEe,SAASC,SAASA,CAACC,IAAI,EAAEC,MAAM,EAAE;EAC9C,IAAMC,WAAW,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EAEjC,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAIF,WAAW,CAACG,OAAO,EACrBL,IAAI,CAAC,CAAC,MAENE,WAAW,CAACG,OAAO,GAAG,IAAI;EAC9B,CAAC,EAAEJ,MAAM,CAAC;AACZ"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@danderson00/react-forms",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.47",
|
|
4
4
|
"description": "Ultra simple, stateless, validated forms for use in React function components",
|
|
5
|
-
"main": "
|
|
6
|
-
"module": "src/index.js",
|
|
5
|
+
"main": "src/index.js",
|
|
7
6
|
"scripts": {
|
|
8
7
|
"test": "jest",
|
|
9
8
|
"build": "babel src --source-maps --out-dir dist",
|
|
@@ -57,4 +56,4 @@
|
|
|
57
56
|
"type": "git",
|
|
58
57
|
"url": "git+https://gitlab.com/danderson00/react-forms.git"
|
|
59
58
|
}
|
|
60
|
-
}
|
|
59
|
+
}
|
package/src/Form.js
CHANGED
|
@@ -2,8 +2,8 @@ import { createElement, createRef, useCallback, useEffect, useReducer, useState
|
|
|
2
2
|
import { get, set } from 'object-path-immutable'
|
|
3
3
|
|
|
4
4
|
const Form = (ContextProvider, additionalContext = {}, ErrorMessage) => (
|
|
5
|
-
({ resetOnSubmit, row, gap, ...props }) => {
|
|
6
|
-
const [fieldValues, setFieldValues] = useState(
|
|
5
|
+
({ resetOnSubmit, row, gap, values, ...props }) => {
|
|
6
|
+
const [fieldValues, setFieldValues] = useState(values || {})
|
|
7
7
|
const [fieldValidators, registerFieldValidator] = useReducer((validators, validator) => [...validators, validator], [])
|
|
8
8
|
const [error, setError] = useState()
|
|
9
9
|
const [valid, setValid] = useState()
|
|
@@ -42,7 +42,7 @@ const Form = (ContextProvider, additionalContext = {}, ErrorMessage) => (
|
|
|
42
42
|
|
|
43
43
|
const reset = () => {
|
|
44
44
|
if(resetOnSubmit) {
|
|
45
|
-
setFieldValues(
|
|
45
|
+
setFieldValues(values || {})
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
|
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,10 +58,10 @@ 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
|
-
element.setCustomValidity(validationMessage || "")
|
|
64
|
+
element.setCustomValidity?.(validationMessage || "")
|
|
64
65
|
|
|
65
66
|
setFieldValidated(true)
|
|
66
67
|
// this is a little hacky, but the simplest way I could think of to determine the
|