@sunggang/ui-lib 0.4.3 → 0.4.5
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/BaseCkeditor.cjs.js +3 -0
- package/BaseCkeditor.esm.js +4 -1
- package/BigCalender.cjs.js +81 -28
- package/BigCalender.esm.js +82 -29
- package/CkEditor.cjs.js +3 -0
- package/CkEditor.esm.js +3 -0
- package/Form.cjs.js +3 -0
- package/Form.esm.js +3 -0
- package/_commonjsHelpers.esm.js +1 -1
- package/baseSwitch.cjs.js +40 -2407
- package/baseSwitch.esm.js +53 -2422
- package/index.cjs.css +0 -3
- package/index.cjs.js +3 -0
- package/index.cjs3.js +1039 -977
- package/index.esm.cjs.js +190 -132
- package/index.esm.css +0 -3
- package/index.esm.esm.js +190 -114
- package/index.esm.js +3 -0
- package/index.esm3.js +1039 -977
- package/package.json +2 -1
- package/src/lib/Form/FlatpickrField/index.d.ts +1 -0
- package/styled-components.esm.cjs.js +1 -1
- package/styled-components.esm.esm.js +1 -1
package/index.esm.cjs.js
CHANGED
|
@@ -4,26 +4,7 @@ var React = require('react');
|
|
|
4
4
|
|
|
5
5
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
6
6
|
|
|
7
|
-
function _interopNamespace(e) {
|
|
8
|
-
if (e && e.__esModule) return e;
|
|
9
|
-
var n = Object.create(null);
|
|
10
|
-
if (e) {
|
|
11
|
-
Object.keys(e).forEach(function (k) {
|
|
12
|
-
if (k !== 'default') {
|
|
13
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function () { return e[k]; }
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
n["default"] = e;
|
|
22
|
-
return Object.freeze(n);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
7
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
26
|
-
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
27
8
|
|
|
28
9
|
function _array_like_to_array(arr, len) {
|
|
29
10
|
if (len == null || len > arr.length) len = arr.length;
|
|
@@ -328,10 +309,8 @@ function cloneObject(data) {
|
|
|
328
309
|
var isFileListInstance = typeof FileList !== "undefined" ? _instanceof(data, FileList) : false;
|
|
329
310
|
if (_instanceof(data, Date)) {
|
|
330
311
|
copy = new Date(data);
|
|
331
|
-
} else if (_instanceof(data, Set)) {
|
|
332
|
-
copy = new Set(data);
|
|
333
312
|
} else if (!(isWeb && (_instanceof(data, Blob) || isFileListInstance)) && (isArray || isObject(data))) {
|
|
334
|
-
copy = isArray ? [] :
|
|
313
|
+
copy = isArray ? [] : Object.create(Object.getPrototypeOf(data));
|
|
335
314
|
if (!isArray && !isPlainObject(data)) {
|
|
336
315
|
copy = data;
|
|
337
316
|
} else {
|
|
@@ -346,17 +325,25 @@ function cloneObject(data) {
|
|
|
346
325
|
}
|
|
347
326
|
return copy;
|
|
348
327
|
}
|
|
349
|
-
var
|
|
350
|
-
return
|
|
328
|
+
var isKey = function(value1) {
|
|
329
|
+
return /^\w*$/.test(value1);
|
|
351
330
|
};
|
|
352
331
|
var isUndefined = function(val) {
|
|
353
332
|
return val === undefined;
|
|
354
333
|
};
|
|
334
|
+
var compact = function(value1) {
|
|
335
|
+
return Array.isArray(value1) ? value1.filter(Boolean) : [];
|
|
336
|
+
};
|
|
337
|
+
var stringToPath = function(input) {
|
|
338
|
+
return compact(input.replace(/["|']|\]/g, "").split(/\.|\[/));
|
|
339
|
+
};
|
|
355
340
|
var get = function(object, path, defaultValue) {
|
|
356
341
|
if (!path || !isObject(object)) {
|
|
357
342
|
return defaultValue;
|
|
358
343
|
}
|
|
359
|
-
var result =
|
|
344
|
+
var result = (isKey(path) ? [
|
|
345
|
+
path
|
|
346
|
+
] : stringToPath(path)).reduce(function(result, key) {
|
|
360
347
|
return isNullOrUndefined(result) ? result : result[key];
|
|
361
348
|
}, object);
|
|
362
349
|
return isUndefined(result) || result === object ? isUndefined(object[path]) ? defaultValue : object[path] : result;
|
|
@@ -364,12 +351,6 @@ var get = function(object, path, defaultValue) {
|
|
|
364
351
|
var isBoolean = function(value1) {
|
|
365
352
|
return typeof value1 === "boolean";
|
|
366
353
|
};
|
|
367
|
-
var isKey = function(value1) {
|
|
368
|
-
return /^\w*$/.test(value1);
|
|
369
|
-
};
|
|
370
|
-
var stringToPath = function(input) {
|
|
371
|
-
return compact(input.replace(/["|']|\]/g, "").split(/\.|\[/));
|
|
372
|
-
};
|
|
373
354
|
var set = function(object, path, value1) {
|
|
374
355
|
var index = -1;
|
|
375
356
|
var tempPath = isKey(path) ? [
|
|
@@ -413,6 +394,7 @@ var INPUT_VALIDATION_RULES = {
|
|
|
413
394
|
validate: "validate"
|
|
414
395
|
};
|
|
415
396
|
var HookFormContext = React__default["default"].createContext(null);
|
|
397
|
+
HookFormContext.displayName = "HookFormContext";
|
|
416
398
|
/**
|
|
417
399
|
* This custom hook allows you to access the form context. useFormContext is intended to be used in deeply nested structures, where it would become inconvenient to pass the context as a prop. To be used with {@link FormProvider}.
|
|
418
400
|
*
|
|
@@ -502,7 +484,7 @@ var getProxyFormState = function(formState, control, localProxyFormState) {
|
|
|
502
484
|
for(var key in formState)_loop(key);
|
|
503
485
|
return result;
|
|
504
486
|
};
|
|
505
|
-
var useIsomorphicLayoutEffect = typeof window !== "undefined" ?
|
|
487
|
+
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React__default["default"].useLayoutEffect : React__default["default"].useEffect;
|
|
506
488
|
/**
|
|
507
489
|
* This custom hook allows you to subscribe to each form state, and isolate the re-render at the custom hook level. It has its scope in terms of form state subscription, so it would not affect other useFormState and useForm. Using this hook can reduce the re-render impact on large and complex form application.
|
|
508
490
|
*
|
|
@@ -535,7 +517,7 @@ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React__namespace
|
|
|
535
517
|
*/ function useFormState(props) {
|
|
536
518
|
var methods = useFormContext();
|
|
537
519
|
var _ref = props || {}, _ref_control = _ref.control, control = _ref_control === void 0 ? methods.control : _ref_control, disabled = _ref.disabled, name = _ref.name, exact = _ref.exact;
|
|
538
|
-
var
|
|
520
|
+
var _React_useState = _sliced_to_array(React__default["default"].useState(control._formState), 2), formState = _React_useState[0], updateFormState = _React_useState[1];
|
|
539
521
|
var _localProxyFormState = React__default["default"].useRef({
|
|
540
522
|
isDirty: false,
|
|
541
523
|
isLoading: false,
|
|
@@ -588,6 +570,58 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
588
570
|
isGlobal && (_names.watchAll = true);
|
|
589
571
|
return formValues;
|
|
590
572
|
};
|
|
573
|
+
var isPrimitive = function(value1) {
|
|
574
|
+
return isNullOrUndefined(value1) || !isObjectType(value1);
|
|
575
|
+
};
|
|
576
|
+
function deepEqual(object1, object2) {
|
|
577
|
+
var _internal_visited = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : new WeakSet();
|
|
578
|
+
if (isPrimitive(object1) || isPrimitive(object2)) {
|
|
579
|
+
return object1 === object2;
|
|
580
|
+
}
|
|
581
|
+
if (isDateObject(object1) && isDateObject(object2)) {
|
|
582
|
+
return object1.getTime() === object2.getTime();
|
|
583
|
+
}
|
|
584
|
+
var keys1 = Object.keys(object1);
|
|
585
|
+
var keys2 = Object.keys(object2);
|
|
586
|
+
if (keys1.length !== keys2.length) {
|
|
587
|
+
return false;
|
|
588
|
+
}
|
|
589
|
+
if (_internal_visited.has(object1) || _internal_visited.has(object2)) {
|
|
590
|
+
return true;
|
|
591
|
+
}
|
|
592
|
+
_internal_visited.add(object1);
|
|
593
|
+
_internal_visited.add(object2);
|
|
594
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
595
|
+
try {
|
|
596
|
+
for(var _iterator = keys1[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
597
|
+
var key = _step.value;
|
|
598
|
+
var val1 = object1[key];
|
|
599
|
+
if (!keys2.includes(key)) {
|
|
600
|
+
return false;
|
|
601
|
+
}
|
|
602
|
+
if (key !== "ref") {
|
|
603
|
+
var val2 = object2[key];
|
|
604
|
+
if (isDateObject(val1) && isDateObject(val2) || isObject(val1) && isObject(val2) || Array.isArray(val1) && Array.isArray(val2) ? !deepEqual(val1, val2, _internal_visited) : val1 !== val2) {
|
|
605
|
+
return false;
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
} catch (err) {
|
|
610
|
+
_didIteratorError = true;
|
|
611
|
+
_iteratorError = err;
|
|
612
|
+
} finally{
|
|
613
|
+
try {
|
|
614
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
615
|
+
_iterator.return();
|
|
616
|
+
}
|
|
617
|
+
} finally{
|
|
618
|
+
if (_didIteratorError) {
|
|
619
|
+
throw _iteratorError;
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
return true;
|
|
624
|
+
}
|
|
591
625
|
/**
|
|
592
626
|
* Custom hook to subscribe to field change and isolate re-rendering at the component level.
|
|
593
627
|
*
|
|
@@ -605,9 +639,18 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
605
639
|
* ```
|
|
606
640
|
*/ function useWatch(props) {
|
|
607
641
|
var methods = useFormContext();
|
|
608
|
-
var _ref = props || {}, _ref_control = _ref.control, control = _ref_control === void 0 ? methods.control : _ref_control, name = _ref.name, defaultValue = _ref.defaultValue, disabled = _ref.disabled, exact = _ref.exact;
|
|
642
|
+
var _ref = props || {}, _ref_control = _ref.control, control = _ref_control === void 0 ? methods.control : _ref_control, name = _ref.name, defaultValue = _ref.defaultValue, disabled = _ref.disabled, exact = _ref.exact, compute = _ref.compute;
|
|
609
643
|
var _defaultValue = React__default["default"].useRef(defaultValue);
|
|
610
|
-
var
|
|
644
|
+
var _compute = React__default["default"].useRef(compute);
|
|
645
|
+
var _computeFormValues = React__default["default"].useRef(undefined);
|
|
646
|
+
_compute.current = compute;
|
|
647
|
+
var defaultValueMemo = React__default["default"].useMemo(function() {
|
|
648
|
+
return control._getWatch(name, _defaultValue.current);
|
|
649
|
+
}, [
|
|
650
|
+
control,
|
|
651
|
+
name
|
|
652
|
+
]);
|
|
653
|
+
var _React_useState = _sliced_to_array(React__default["default"].useState(_compute.current ? _compute.current(defaultValueMemo) : defaultValueMemo), 2), value1 = _React_useState[0], updateValue = _React_useState[1];
|
|
611
654
|
useIsomorphicLayoutEffect(function() {
|
|
612
655
|
return control._subscribe({
|
|
613
656
|
name: name,
|
|
@@ -616,13 +659,24 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
616
659
|
},
|
|
617
660
|
exact: exact,
|
|
618
661
|
callback: function(formState) {
|
|
619
|
-
|
|
662
|
+
if (!disabled) {
|
|
663
|
+
var formValues = generateWatchOutput(name, control._names, formState.values || control._formValues, false, _defaultValue.current);
|
|
664
|
+
if (_compute.current) {
|
|
665
|
+
var computedFormValues = _compute.current(formValues);
|
|
666
|
+
if (!deepEqual(computedFormValues, _computeFormValues.current)) {
|
|
667
|
+
updateValue(computedFormValues);
|
|
668
|
+
_computeFormValues.current = computedFormValues;
|
|
669
|
+
}
|
|
670
|
+
} else {
|
|
671
|
+
updateValue(formValues);
|
|
672
|
+
}
|
|
673
|
+
}
|
|
620
674
|
}
|
|
621
675
|
});
|
|
622
676
|
}, [
|
|
623
|
-
name,
|
|
624
677
|
control,
|
|
625
678
|
disabled,
|
|
679
|
+
name,
|
|
626
680
|
exact
|
|
627
681
|
]);
|
|
628
682
|
React__default["default"].useEffect(function() {
|
|
@@ -655,12 +709,19 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
655
709
|
* ```
|
|
656
710
|
*/ function useController(props) {
|
|
657
711
|
var methods = useFormContext();
|
|
658
|
-
var name = props.name, disabled = props.disabled, _props_control = props.control, control = _props_control === void 0 ? methods.control : _props_control, shouldUnregister = props.shouldUnregister;
|
|
712
|
+
var name = props.name, disabled = props.disabled, _props_control = props.control, control = _props_control === void 0 ? methods.control : _props_control, shouldUnregister = props.shouldUnregister, defaultValue = props.defaultValue;
|
|
659
713
|
var isArrayField = isNameInFieldArray(control._names.array, name);
|
|
714
|
+
var defaultValueMemo = React__default["default"].useMemo(function() {
|
|
715
|
+
return get(control._formValues, name, get(control._defaultValues, name, defaultValue));
|
|
716
|
+
}, [
|
|
717
|
+
control,
|
|
718
|
+
name,
|
|
719
|
+
defaultValue
|
|
720
|
+
]);
|
|
660
721
|
var value1 = useWatch({
|
|
661
722
|
control: control,
|
|
662
723
|
name: name,
|
|
663
|
-
defaultValue:
|
|
724
|
+
defaultValue: defaultValueMemo,
|
|
664
725
|
exact: true
|
|
665
726
|
});
|
|
666
727
|
var formState = useFormState({
|
|
@@ -674,6 +735,7 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
674
735
|
}), isBoolean(props.disabled) ? {
|
|
675
736
|
disabled: props.disabled
|
|
676
737
|
} : {})));
|
|
738
|
+
_props.current = props;
|
|
677
739
|
var fieldState = React__default["default"].useMemo(function() {
|
|
678
740
|
return Object.defineProperties({}, {
|
|
679
741
|
invalid: {
|
|
@@ -739,10 +801,10 @@ var generateWatchOutput = function(names, _names, formValues, isGlobal, defaultV
|
|
|
739
801
|
if (field && elm) {
|
|
740
802
|
field._f.ref = {
|
|
741
803
|
focus: function() {
|
|
742
|
-
return elm.focus();
|
|
804
|
+
return elm.focus && elm.focus();
|
|
743
805
|
},
|
|
744
806
|
select: function() {
|
|
745
|
-
return elm.select();
|
|
807
|
+
return elm.select && elm.select();
|
|
746
808
|
},
|
|
747
809
|
setCustomValidity: function(message) {
|
|
748
810
|
return elm.setCustomValidity(message);
|
|
@@ -927,52 +989,6 @@ var createSubject = function() {
|
|
|
927
989
|
unsubscribe: unsubscribe
|
|
928
990
|
};
|
|
929
991
|
};
|
|
930
|
-
var isPrimitive = function(value1) {
|
|
931
|
-
return isNullOrUndefined(value1) || !isObjectType(value1);
|
|
932
|
-
};
|
|
933
|
-
function deepEqual(object1, object2) {
|
|
934
|
-
if (isPrimitive(object1) || isPrimitive(object2)) {
|
|
935
|
-
return object1 === object2;
|
|
936
|
-
}
|
|
937
|
-
if (isDateObject(object1) && isDateObject(object2)) {
|
|
938
|
-
return object1.getTime() === object2.getTime();
|
|
939
|
-
}
|
|
940
|
-
var keys1 = Object.keys(object1);
|
|
941
|
-
var keys2 = Object.keys(object2);
|
|
942
|
-
if (keys1.length !== keys2.length) {
|
|
943
|
-
return false;
|
|
944
|
-
}
|
|
945
|
-
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
946
|
-
try {
|
|
947
|
-
for(var _iterator = keys1[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
948
|
-
var key = _step.value;
|
|
949
|
-
var val1 = object1[key];
|
|
950
|
-
if (!keys2.includes(key)) {
|
|
951
|
-
return false;
|
|
952
|
-
}
|
|
953
|
-
if (key !== "ref") {
|
|
954
|
-
var val2 = object2[key];
|
|
955
|
-
if (isDateObject(val1) && isDateObject(val2) || isObject(val1) && isObject(val2) || Array.isArray(val1) && Array.isArray(val2) ? !deepEqual(val1, val2) : val1 !== val2) {
|
|
956
|
-
return false;
|
|
957
|
-
}
|
|
958
|
-
}
|
|
959
|
-
}
|
|
960
|
-
} catch (err) {
|
|
961
|
-
_didIteratorError = true;
|
|
962
|
-
_iteratorError = err;
|
|
963
|
-
} finally{
|
|
964
|
-
try {
|
|
965
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
966
|
-
_iterator.return();
|
|
967
|
-
}
|
|
968
|
-
} finally{
|
|
969
|
-
if (_didIteratorError) {
|
|
970
|
-
throw _iteratorError;
|
|
971
|
-
}
|
|
972
|
-
}
|
|
973
|
-
}
|
|
974
|
-
return true;
|
|
975
|
-
}
|
|
976
992
|
var isEmptyObject = function(value1) {
|
|
977
993
|
return isObject(value1) && !Object.keys(value1).length;
|
|
978
994
|
};
|
|
@@ -1265,6 +1281,12 @@ function schemaErrorLookup(errors, _fields, name) {
|
|
|
1265
1281
|
error: foundError
|
|
1266
1282
|
};
|
|
1267
1283
|
}
|
|
1284
|
+
if (foundError && foundError.root && foundError.root.type) {
|
|
1285
|
+
return {
|
|
1286
|
+
name: "".concat(fieldName, ".root"),
|
|
1287
|
+
error: foundError.root
|
|
1288
|
+
};
|
|
1289
|
+
}
|
|
1268
1290
|
names.pop();
|
|
1269
1291
|
}
|
|
1270
1292
|
return {
|
|
@@ -2042,7 +2064,7 @@ function createFormControl() {
|
|
|
2042
2064
|
return;
|
|
2043
2065
|
}
|
|
2044
2066
|
var fieldValue = value1[fieldKey];
|
|
2045
|
-
var fieldName =
|
|
2067
|
+
var fieldName = name + "." + fieldKey;
|
|
2046
2068
|
var field = get(_fields, fieldName);
|
|
2047
2069
|
(_names.array.has(name) || isObject(fieldValue) || field && !field._f) && !isDateObject(fieldValue) ? setValues(fieldName, fieldValue, options) : setFieldValue(fieldName, fieldValue, options);
|
|
2048
2070
|
}
|
|
@@ -2068,7 +2090,9 @@ function createFormControl() {
|
|
|
2068
2090
|
} else {
|
|
2069
2091
|
field && !field._f && !isNullOrUndefined(cloneValue) ? setValues(name, cloneValue, options) : setFieldValue(name, cloneValue, options);
|
|
2070
2092
|
}
|
|
2071
|
-
isWatched(name, _names) && _subjects.state.next(_object_spread({}, _formState)
|
|
2093
|
+
isWatched(name, _names) && _subjects.state.next(_object_spread_props(_object_spread({}, _formState), {
|
|
2094
|
+
name: name
|
|
2095
|
+
}));
|
|
2072
2096
|
_subjects.state.next({
|
|
2073
2097
|
name: _state.mount ? name : undefined,
|
|
2074
2098
|
values: cloneObject(_formValues)
|
|
@@ -2100,8 +2124,10 @@ function createFormControl() {
|
|
|
2100
2124
|
watched = isWatched(name, _names, isBlurEvent);
|
|
2101
2125
|
set(_formValues, name, fieldValue);
|
|
2102
2126
|
if (isBlurEvent) {
|
|
2103
|
-
|
|
2104
|
-
|
|
2127
|
+
if (!target || !target.readOnly) {
|
|
2128
|
+
field._f.onBlur && field._f.onBlur(event);
|
|
2129
|
+
delayErrorCallback && delayErrorCallback(0);
|
|
2130
|
+
}
|
|
2105
2131
|
} else if (field._f.onChange) {
|
|
2106
2132
|
field._f.onChange(event);
|
|
2107
2133
|
}
|
|
@@ -2357,7 +2383,7 @@ function createFormControl() {
|
|
|
2357
2383
|
var watch = function(name, defaultValue) {
|
|
2358
2384
|
return isFunction(name) ? _subjects.state.subscribe({
|
|
2359
2385
|
next: function(payload) {
|
|
2360
|
-
return name(_getWatch(undefined, defaultValue), payload);
|
|
2386
|
+
return "values" in payload && name(_getWatch(undefined, defaultValue), payload);
|
|
2361
2387
|
}
|
|
2362
2388
|
}) : _getWatch(name, defaultValue, true);
|
|
2363
2389
|
};
|
|
@@ -2365,9 +2391,11 @@ function createFormControl() {
|
|
|
2365
2391
|
return _subjects.state.subscribe({
|
|
2366
2392
|
next: function(formState) {
|
|
2367
2393
|
if (shouldSubscribeByName(props.name, formState.name, props.exact) && shouldRenderFormState(formState, props.formState || _proxyFormState, _setFormState, props.reRenderRoot)) {
|
|
2368
|
-
props.callback(_object_spread({
|
|
2394
|
+
props.callback(_object_spread_props(_object_spread({
|
|
2369
2395
|
values: _object_spread({}, _formValues)
|
|
2370
|
-
}, _formState, formState)
|
|
2396
|
+
}, _formState, formState), {
|
|
2397
|
+
defaultValues: _defaultValues
|
|
2398
|
+
}));
|
|
2371
2399
|
}
|
|
2372
2400
|
}
|
|
2373
2401
|
}).unsubscribe;
|
|
@@ -2547,7 +2575,7 @@ function createFormControl() {
|
|
|
2547
2575
|
case 1:
|
|
2548
2576
|
_ref = _state.sent(), errors = _ref.errors, values = _ref.values;
|
|
2549
2577
|
_formState.errors = errors;
|
|
2550
|
-
fieldValues = values;
|
|
2578
|
+
fieldValues = cloneObject(values);
|
|
2551
2579
|
return [
|
|
2552
2580
|
3,
|
|
2553
2581
|
4
|
|
@@ -2566,7 +2594,7 @@ function createFormControl() {
|
|
|
2566
2594
|
try {
|
|
2567
2595
|
for(_iterator = _names.disabled[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
2568
2596
|
name = _step.value;
|
|
2569
|
-
|
|
2597
|
+
unset(fieldValues, name);
|
|
2570
2598
|
}
|
|
2571
2599
|
} catch (err) {
|
|
2572
2600
|
_didIteratorError = true;
|
|
@@ -2747,28 +2775,32 @@ function createFormControl() {
|
|
|
2747
2775
|
}
|
|
2748
2776
|
}
|
|
2749
2777
|
}
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
for(var _iterator2 = _names.mount[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true){
|
|
2753
|
-
var fieldName1 = _step2.value;
|
|
2754
|
-
setValue(fieldName1, get(values, fieldName1));
|
|
2755
|
-
}
|
|
2756
|
-
} catch (err) {
|
|
2757
|
-
_didIteratorError2 = true;
|
|
2758
|
-
_iteratorError2 = err;
|
|
2759
|
-
} finally{
|
|
2778
|
+
if (keepStateOptions.keepFieldsRef) {
|
|
2779
|
+
var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = undefined;
|
|
2760
2780
|
try {
|
|
2761
|
-
|
|
2762
|
-
|
|
2781
|
+
for(var _iterator2 = _names.mount[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true){
|
|
2782
|
+
var fieldName1 = _step2.value;
|
|
2783
|
+
setValue(fieldName1, get(values, fieldName1));
|
|
2763
2784
|
}
|
|
2785
|
+
} catch (err) {
|
|
2786
|
+
_didIteratorError2 = true;
|
|
2787
|
+
_iteratorError2 = err;
|
|
2764
2788
|
} finally{
|
|
2765
|
-
|
|
2766
|
-
|
|
2789
|
+
try {
|
|
2790
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
2791
|
+
_iterator2.return();
|
|
2792
|
+
}
|
|
2793
|
+
} finally{
|
|
2794
|
+
if (_didIteratorError2) {
|
|
2795
|
+
throw _iteratorError2;
|
|
2796
|
+
}
|
|
2767
2797
|
}
|
|
2768
2798
|
}
|
|
2799
|
+
} else {
|
|
2800
|
+
_fields = {};
|
|
2769
2801
|
}
|
|
2770
2802
|
}
|
|
2771
|
-
_formValues = cloneObject(values);
|
|
2803
|
+
_formValues = _options.shouldUnregister ? keepStateOptions.keepDefaultValues ? cloneObject(_defaultValues) : {} : cloneObject(values);
|
|
2772
2804
|
_subjects.array.next({
|
|
2773
2805
|
values: _object_spread({}, values)
|
|
2774
2806
|
});
|
|
@@ -2795,7 +2827,8 @@ function createFormControl() {
|
|
|
2795
2827
|
touchedFields: keepStateOptions.keepTouched ? _formState.touchedFields : {},
|
|
2796
2828
|
errors: keepStateOptions.keepErrors ? _formState.errors : {},
|
|
2797
2829
|
isSubmitSuccessful: keepStateOptions.keepIsSubmitSuccessful ? _formState.isSubmitSuccessful : false,
|
|
2798
|
-
isSubmitting: false
|
|
2830
|
+
isSubmitting: false,
|
|
2831
|
+
defaultValues: _defaultValues
|
|
2799
2832
|
});
|
|
2800
2833
|
};
|
|
2801
2834
|
var reset = function(formValues, keepStateOptions) {
|
|
@@ -2833,6 +2866,7 @@ function createFormControl() {
|
|
|
2833
2866
|
setError: setError,
|
|
2834
2867
|
_subscribe: _subscribe,
|
|
2835
2868
|
_runSchema: _runSchema,
|
|
2869
|
+
_focusError: _focusError,
|
|
2836
2870
|
_getWatch: _getWatch,
|
|
2837
2871
|
_getDirty: _getDirty,
|
|
2838
2872
|
_setValid: _setValid,
|
|
@@ -2897,6 +2931,9 @@ function createFormControl() {
|
|
|
2897
2931
|
});
|
|
2898
2932
|
}
|
|
2899
2933
|
var generateId = function() {
|
|
2934
|
+
if (typeof crypto !== "undefined" && crypto.randomUUID) {
|
|
2935
|
+
return crypto.randomUUID();
|
|
2936
|
+
}
|
|
2900
2937
|
var d = typeof performance === "undefined" ? Date.now() : performance.now() * 1000;
|
|
2901
2938
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
|
|
2902
2939
|
var r = (Math.random() * 16 + d) % 16 | 0;
|
|
@@ -3012,21 +3049,25 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3012
3049
|
*/ function useFieldArray(props) {
|
|
3013
3050
|
var methods = useFormContext();
|
|
3014
3051
|
var _props_control = props.control, control = _props_control === void 0 ? methods.control : _props_control, name = props.name, _props_keyName = props.keyName, keyName = _props_keyName === void 0 ? "id" : _props_keyName, shouldUnregister = props.shouldUnregister, rules = props.rules;
|
|
3015
|
-
var
|
|
3052
|
+
var _React_useState = _sliced_to_array(React__default["default"].useState(control._getFieldArray(name)), 2), fields = _React_useState[0], setFields = _React_useState[1];
|
|
3016
3053
|
var ids = React__default["default"].useRef(control._getFieldArray(name).map(generateId));
|
|
3017
3054
|
var _fieldIds = React__default["default"].useRef(fields);
|
|
3018
|
-
var _name = React__default["default"].useRef(name);
|
|
3019
3055
|
var _actioned = React__default["default"].useRef(false);
|
|
3020
|
-
_name.current = name;
|
|
3021
3056
|
_fieldIds.current = fields;
|
|
3022
3057
|
control._names.array.add(name);
|
|
3023
|
-
|
|
3024
|
-
|
|
3058
|
+
React__default["default"].useMemo(function() {
|
|
3059
|
+
return rules && control.register(name, rules);
|
|
3060
|
+
}, [
|
|
3061
|
+
control,
|
|
3062
|
+
rules,
|
|
3063
|
+
name
|
|
3064
|
+
]);
|
|
3065
|
+
useIsomorphicLayoutEffect(function() {
|
|
3025
3066
|
return control._subjects.array.subscribe({
|
|
3026
3067
|
next: function(param) {
|
|
3027
3068
|
var values = param.values, fieldArrayName = param.name;
|
|
3028
|
-
if (fieldArrayName ===
|
|
3029
|
-
var fieldValues = get(values,
|
|
3069
|
+
if (fieldArrayName === name || !fieldArrayName) {
|
|
3070
|
+
var fieldValues = get(values, name);
|
|
3030
3071
|
if (Array.isArray(fieldValues)) {
|
|
3031
3072
|
setFields(fieldValues);
|
|
3032
3073
|
ids.current = fieldValues.map(generateId);
|
|
@@ -3035,7 +3076,8 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3035
3076
|
}
|
|
3036
3077
|
}).unsubscribe;
|
|
3037
3078
|
}, [
|
|
3038
|
-
control
|
|
3079
|
+
control,
|
|
3080
|
+
name
|
|
3039
3081
|
]);
|
|
3040
3082
|
var updateValues = React__default["default"].useCallback(function(updatedFieldArrayValues) {
|
|
3041
3083
|
_actioned.current = true;
|
|
@@ -3279,7 +3321,7 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3279
3321
|
var props = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
3280
3322
|
var _formControl = React__default["default"].useRef(undefined);
|
|
3281
3323
|
var _values = React__default["default"].useRef(undefined);
|
|
3282
|
-
var
|
|
3324
|
+
var _React_useState = _sliced_to_array(React__default["default"].useState({
|
|
3283
3325
|
isDirty: false,
|
|
3284
3326
|
isValidating: false,
|
|
3285
3327
|
isLoading: isFunction(props.defaultValues),
|
|
@@ -3295,13 +3337,22 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3295
3337
|
disabled: props.disabled || false,
|
|
3296
3338
|
isReady: false,
|
|
3297
3339
|
defaultValues: isFunction(props.defaultValues) ? undefined : props.defaultValues
|
|
3298
|
-
}), 2), formState =
|
|
3340
|
+
}), 2), formState = _React_useState[0], updateFormState = _React_useState[1];
|
|
3299
3341
|
if (!_formControl.current) {
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3303
|
-
|
|
3304
|
-
|
|
3342
|
+
if (props.formControl) {
|
|
3343
|
+
_formControl.current = _object_spread_props(_object_spread({}, props.formControl), {
|
|
3344
|
+
formState: formState
|
|
3345
|
+
});
|
|
3346
|
+
if (props.defaultValues && !isFunction(props.defaultValues)) {
|
|
3347
|
+
props.formControl.reset(props.defaultValues, props.resetOptions);
|
|
3348
|
+
}
|
|
3349
|
+
} else {
|
|
3350
|
+
var _createFormControl = createFormControl(props); _createFormControl.formControl; var rest = _object_without_properties(_createFormControl, [
|
|
3351
|
+
"formControl"
|
|
3352
|
+
]);
|
|
3353
|
+
_formControl.current = _object_spread_props(_object_spread({}, rest), {
|
|
3354
|
+
formState: formState
|
|
3355
|
+
});
|
|
3305
3356
|
}
|
|
3306
3357
|
}
|
|
3307
3358
|
var control = _formControl.current.control;
|
|
@@ -3337,15 +3388,20 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3337
3388
|
if (props.reValidateMode) {
|
|
3338
3389
|
control._options.reValidateMode = props.reValidateMode;
|
|
3339
3390
|
}
|
|
3340
|
-
if (props.errors && !isEmptyObject(props.errors)) {
|
|
3341
|
-
control._setErrors(props.errors);
|
|
3342
|
-
}
|
|
3343
3391
|
}, [
|
|
3344
3392
|
control,
|
|
3345
|
-
props.errors,
|
|
3346
3393
|
props.mode,
|
|
3347
3394
|
props.reValidateMode
|
|
3348
3395
|
]);
|
|
3396
|
+
React__default["default"].useEffect(function() {
|
|
3397
|
+
if (props.errors) {
|
|
3398
|
+
control._setErrors(props.errors);
|
|
3399
|
+
control._focusError();
|
|
3400
|
+
}
|
|
3401
|
+
}, [
|
|
3402
|
+
control,
|
|
3403
|
+
props.errors
|
|
3404
|
+
]);
|
|
3349
3405
|
React__default["default"].useEffect(function() {
|
|
3350
3406
|
props.shouldUnregister && control._subjects.state.next({
|
|
3351
3407
|
values: control._getWatch()
|
|
@@ -3369,7 +3425,9 @@ var updateAt = function(fieldValues, index, value1) {
|
|
|
3369
3425
|
]);
|
|
3370
3426
|
React__default["default"].useEffect(function() {
|
|
3371
3427
|
if (props.values && !deepEqual(props.values, _values.current)) {
|
|
3372
|
-
control._reset(props.values,
|
|
3428
|
+
control._reset(props.values, _object_spread({
|
|
3429
|
+
keepFieldsRef: true
|
|
3430
|
+
}, control._options.resetOptions));
|
|
3373
3431
|
_values.current = props.values;
|
|
3374
3432
|
updateFormState(function(state) {
|
|
3375
3433
|
return _object_spread({}, state);
|
package/index.esm.css
CHANGED
|
@@ -3070,13 +3070,10 @@ video {
|
|
|
3070
3070
|
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
3071
3071
|
}
|
|
3072
3072
|
.backdrop-filter {
|
|
3073
|
-
-webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
|
|
3074
3073
|
backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
|
|
3075
3074
|
}
|
|
3076
3075
|
.transition {
|
|
3077
|
-
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
|
|
3078
3076
|
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
|
|
3079
|
-
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
|
|
3080
3077
|
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
3081
3078
|
transition-duration: 150ms;
|
|
3082
3079
|
}
|