@tsed/react-formio 1.13.3 → 1.13.6
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/components/form/form.stories.d.ts +25 -0
- package/dist/components/form/useForm.hook.d.ts +7 -3
- package/dist/components/index.d.ts +2 -0
- package/dist/index.js +36 -13
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +43 -22
- package/dist/index.modern.js.map +1 -1
- package/package.json +6 -6
- package/src/components/form/form.stories.tsx +58 -1
- package/src/components/form/useForm.hook.ts +35 -11
- package/src/components/index.ts +2 -0
- package/src/components/table/components/defaultCell.component.tsx +1 -1
- package/src/index.ts +0 -1
|
@@ -6417,3 +6417,28 @@ export declare const ReadOnly: {
|
|
|
6417
6417
|
};
|
|
6418
6418
|
};
|
|
6419
6419
|
};
|
|
6420
|
+
export declare const OnChange: {
|
|
6421
|
+
(args: any): JSX.Element;
|
|
6422
|
+
args: {
|
|
6423
|
+
form: {
|
|
6424
|
+
type: string;
|
|
6425
|
+
display: string;
|
|
6426
|
+
tags: never[];
|
|
6427
|
+
components: {
|
|
6428
|
+
label: string;
|
|
6429
|
+
widget: {
|
|
6430
|
+
type: string;
|
|
6431
|
+
};
|
|
6432
|
+
errorLabel: string;
|
|
6433
|
+
key: string;
|
|
6434
|
+
inputType: string;
|
|
6435
|
+
type: string;
|
|
6436
|
+
id: string;
|
|
6437
|
+
defaultValue: string;
|
|
6438
|
+
validate: {
|
|
6439
|
+
required: boolean;
|
|
6440
|
+
};
|
|
6441
|
+
}[];
|
|
6442
|
+
};
|
|
6443
|
+
};
|
|
6444
|
+
};
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { ExtendedComponentSchema
|
|
2
|
+
import { ExtendedComponentSchema } from "formiojs";
|
|
3
3
|
import { FormOptions, FormSchema, Submission } from "../../interfaces";
|
|
4
4
|
export interface ChangedSubmission<T = any> extends Submission<T> {
|
|
5
|
-
changed:
|
|
5
|
+
changed: {
|
|
6
|
+
component: ExtendedComponentSchema;
|
|
7
|
+
instance: any;
|
|
8
|
+
value: any;
|
|
9
|
+
} & Record<string, any>;
|
|
6
10
|
isValid: boolean;
|
|
7
11
|
}
|
|
8
12
|
export interface FormPageChangeProps<Data = any> {
|
|
@@ -49,7 +53,7 @@ export interface UseFormHookProps<Data = any> extends Record<string, any> {
|
|
|
49
53
|
onFocus?: Function;
|
|
50
54
|
onBlur?: Function;
|
|
51
55
|
onInitialized?: Function;
|
|
52
|
-
onFormReady?: (formio:
|
|
56
|
+
onFormReady?: (formio: any) => void;
|
|
53
57
|
}
|
|
54
58
|
export declare function useForm<Data = any>(props: UseFormHookProps<Data>): {
|
|
55
59
|
element: import("react").MutableRefObject<any>;
|
|
@@ -2,6 +2,7 @@ export * from "./actions-table/actionsTable.component";
|
|
|
2
2
|
export * from "./alert/alert.component";
|
|
3
3
|
export * from "./card/card.component";
|
|
4
4
|
export * from "./form/form.component";
|
|
5
|
+
export * from "./form/useForm.hook";
|
|
5
6
|
export * from "./form-access/formAccess.component";
|
|
6
7
|
export * from "./form-action/formAction.component";
|
|
7
8
|
export * from "./form-builder/formBuilder.component";
|
|
@@ -9,6 +10,7 @@ export * from "./form-control/formControl.component";
|
|
|
9
10
|
export * from "./form-edit/formCtas.component";
|
|
10
11
|
export * from "./form-edit/formEdit.component";
|
|
11
12
|
export * from "./form-edit/formParameters.component";
|
|
13
|
+
export * from "./form-edit/useFormEdit.hook";
|
|
12
14
|
export * from "./form-settings/formSettings.component";
|
|
13
15
|
export * from "./forms-table/formsTable.component";
|
|
14
16
|
export * from "./input-tags/inputTags.component";
|
package/dist/index.js
CHANGED
|
@@ -9,7 +9,6 @@ var Choices = require('choices.js');
|
|
|
9
9
|
var PropTypes = require('prop-types');
|
|
10
10
|
var reactTable = require('react-table');
|
|
11
11
|
var AllComponents = require('formiojs/components');
|
|
12
|
-
var noop$1 = require('lodash');
|
|
13
12
|
var cloneDeep = require('lodash/cloneDeep');
|
|
14
13
|
var isEqual = require('lodash/isEqual');
|
|
15
14
|
var FormioUtils = require('formiojs/utils');
|
|
@@ -18,6 +17,7 @@ var FormioFormBuilder = require('formiojs/FormBuilder');
|
|
|
18
17
|
var Tooltip = require('tooltip.js');
|
|
19
18
|
var uniq = require('lodash/uniq');
|
|
20
19
|
var camelCase = require('lodash/camelCase');
|
|
20
|
+
var noop$1 = require('lodash');
|
|
21
21
|
var ReactDOM = require('react-dom');
|
|
22
22
|
var reduxUtils = require('@tsed/redux-utils');
|
|
23
23
|
var get = require('lodash/get');
|
|
@@ -33,7 +33,6 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
33
33
|
var Choices__default = /*#__PURE__*/_interopDefaultLegacy(Choices);
|
|
34
34
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
35
35
|
var AllComponents__default = /*#__PURE__*/_interopDefaultLegacy(AllComponents);
|
|
36
|
-
var noop__default$1 = /*#__PURE__*/_interopDefaultLegacy(noop$1);
|
|
37
36
|
var cloneDeep__default = /*#__PURE__*/_interopDefaultLegacy(cloneDeep);
|
|
38
37
|
var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
|
|
39
38
|
var FormioUtils__default = /*#__PURE__*/_interopDefaultLegacy(FormioUtils);
|
|
@@ -42,6 +41,7 @@ var FormioFormBuilder__default = /*#__PURE__*/_interopDefaultLegacy(FormioFormBu
|
|
|
42
41
|
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
|
43
42
|
var uniq__default = /*#__PURE__*/_interopDefaultLegacy(uniq);
|
|
44
43
|
var camelCase__default = /*#__PURE__*/_interopDefaultLegacy(camelCase);
|
|
44
|
+
var noop__default$1 = /*#__PURE__*/_interopDefaultLegacy(noop$1);
|
|
45
45
|
var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
|
|
46
46
|
var get__default = /*#__PURE__*/_interopDefaultLegacy(get);
|
|
47
47
|
|
|
@@ -620,7 +620,7 @@ function DefaultOperationButton(props) {
|
|
|
620
620
|
onClick: stopPropagationWrapper(function () {
|
|
621
621
|
return onClick(action);
|
|
622
622
|
})
|
|
623
|
-
}, icon ? /*#__PURE__*/React__default['default'].createElement(Fragment, null, /*#__PURE__*/React__default['default'].createElement("i", {
|
|
623
|
+
}, icon ? /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("i", {
|
|
624
624
|
className: iconClass(undefined, icon)
|
|
625
625
|
}), " ", title && " ") : null, title && /*#__PURE__*/React__default['default'].createElement("span", {
|
|
626
626
|
className: icon && title ? "ml-1" : ""
|
|
@@ -1004,9 +1004,11 @@ function _catch(body, recover) {
|
|
|
1004
1004
|
return result;
|
|
1005
1005
|
}
|
|
1006
1006
|
|
|
1007
|
-
function
|
|
1007
|
+
function useEvent(event, callback, events) {
|
|
1008
1008
|
React.useEffect(function () {
|
|
1009
|
-
|
|
1009
|
+
if (callback) {
|
|
1010
|
+
events.set(event, callback);
|
|
1011
|
+
}
|
|
1010
1012
|
}, [callback, event, events]);
|
|
1011
1013
|
}
|
|
1012
1014
|
|
|
@@ -1024,7 +1026,24 @@ function useEvents(funcs) {
|
|
|
1024
1026
|
}
|
|
1025
1027
|
};
|
|
1026
1028
|
|
|
1027
|
-
|
|
1029
|
+
useEvent("onBlur", funcs["onBlur"], events.current);
|
|
1030
|
+
useEvent("onPrevPage", funcs["onPrevPage"], events.current);
|
|
1031
|
+
useEvent("onNextPage", funcs["onNextPage"], events.current);
|
|
1032
|
+
useEvent("onCancel", funcs["onCancel"], events.current);
|
|
1033
|
+
useEvent("onChange", funcs["onChange"], events.current);
|
|
1034
|
+
useEvent("onCustomEvent", funcs["onCustomEvent"], events.current);
|
|
1035
|
+
useEvent("onComponentChange", funcs["onComponentChange"], events.current);
|
|
1036
|
+
useEvent("onSubmit", funcs["onSubmit"], events.current);
|
|
1037
|
+
useEvent("onAsyncSubmit", funcs["onAsyncSubmit"], events.current);
|
|
1038
|
+
useEvent("onSubmitDone", funcs["onSubmitDone"], events.current);
|
|
1039
|
+
useEvent("onFormLoad", funcs["onFormLoad"], events.current);
|
|
1040
|
+
useEvent("onError", funcs["onError"], events.current);
|
|
1041
|
+
useEvent("onRender", funcs["onRender"], events.current);
|
|
1042
|
+
useEvent("onAttach", funcs["onAttach"], events.current);
|
|
1043
|
+
useEvent("onBuild", funcs["onBuild"], events.current);
|
|
1044
|
+
useEvent("onFocus", funcs["onFocus"], events.current);
|
|
1045
|
+
useEvent("onBlur", funcs["onBlur"], events.current);
|
|
1046
|
+
useEvent("onInitialized", funcs["onInitialized"], events.current);
|
|
1028
1047
|
return {
|
|
1029
1048
|
events: events,
|
|
1030
1049
|
emit: emit,
|
|
@@ -1093,10 +1112,8 @@ function useForm(props) {
|
|
|
1093
1112
|
if (event.startsWith("formio.")) {
|
|
1094
1113
|
var eventName = "on" + event.charAt(7).toUpperCase() + event.slice(8);
|
|
1095
1114
|
|
|
1096
|
-
if (eventName === "onChange") {
|
|
1097
|
-
|
|
1098
|
-
return;
|
|
1099
|
-
}
|
|
1115
|
+
if (eventName === "onChange" && !args[0].changed) {
|
|
1116
|
+
return;
|
|
1100
1117
|
}
|
|
1101
1118
|
|
|
1102
1119
|
emit.apply(void 0, [eventName].concat(args, [instance.current]));
|
|
@@ -1119,6 +1136,10 @@ function useForm(props) {
|
|
|
1119
1136
|
React.useEffect(function () {
|
|
1120
1137
|
if (instance.current) {
|
|
1121
1138
|
instance.current.ready.then(function (formio) {
|
|
1139
|
+
if (isEqual__default['default'](formio.submission.data, submission == null ? void 0 : submission.data)) {
|
|
1140
|
+
return;
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1122
1143
|
submission && (formio.submission = cloneDeep__default['default'](submission));
|
|
1123
1144
|
});
|
|
1124
1145
|
}
|
|
@@ -1504,7 +1525,7 @@ function NamedFormAccess(_ref2) {
|
|
|
1504
1525
|
isValid = _useState2[0],
|
|
1505
1526
|
setIsValid = _useState2[1];
|
|
1506
1527
|
|
|
1507
|
-
return /*#__PURE__*/React__default['default'].createElement(Fragment, null, /*#__PURE__*/React__default['default'].createElement(Form, {
|
|
1528
|
+
return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(Form, {
|
|
1508
1529
|
name: name,
|
|
1509
1530
|
form: form[name],
|
|
1510
1531
|
submission: submissions[name],
|
|
@@ -8116,7 +8137,7 @@ function DefaultCell(_ref) {
|
|
|
8116
8137
|
} : _ref$render;
|
|
8117
8138
|
|
|
8118
8139
|
if (value === undefined) {
|
|
8119
|
-
return /*#__PURE__*/React__default['default'].createElement(
|
|
8140
|
+
return /*#__PURE__*/React__default['default'].createElement("span", null);
|
|
8120
8141
|
}
|
|
8121
8142
|
|
|
8122
8143
|
var rendered = render(value);
|
|
@@ -8189,7 +8210,7 @@ function SliderColumnFilter(_ref) {
|
|
|
8189
8210
|
min = _React$useMemo[0],
|
|
8190
8211
|
max = _React$useMemo[1];
|
|
8191
8212
|
|
|
8192
|
-
return /*#__PURE__*/React__default['default'].createElement(Fragment, null, /*#__PURE__*/React__default['default'].createElement("input", {
|
|
8213
|
+
return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("input", {
|
|
8193
8214
|
type: "range",
|
|
8194
8215
|
min: min,
|
|
8195
8216
|
max: max,
|
|
@@ -9957,6 +9978,8 @@ exports.setUser = setUser;
|
|
|
9957
9978
|
exports.submissionAccessUser = submissionAccessUser;
|
|
9958
9979
|
exports.submissionReducer = submissionReducer;
|
|
9959
9980
|
exports.submissionsReducer = submissionsReducer;
|
|
9981
|
+
exports.useForm = useForm;
|
|
9982
|
+
exports.useFormEdit = useFormEdit;
|
|
9960
9983
|
exports.useModal = useModal;
|
|
9961
9984
|
exports.useOperations = useOperations;
|
|
9962
9985
|
exports.useTooltip = useTooltip;
|