@nolwenture/formik-jsonschema-form 1.0.9 → 1.0.11
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.
|
@@ -16,9 +16,6 @@ const FilesUploadField = (props) => {
|
|
|
16
16
|
const { setFieldValue, values } = (0, formik_1.useFormikContext)();
|
|
17
17
|
const value = (0, react_1.useMemo)(() => (0, formik_1.getIn)(values, name) ?? [], [values, name]);
|
|
18
18
|
const readOnly = schema.readOnly ?? false;
|
|
19
|
-
if (readOnly && (!value || value.length === 0)) {
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
19
|
const { uploadFiles, removeFile } = (0, react_1.useContext)(FilesUploadContext_1.FilesUploadContext);
|
|
23
20
|
const [uploadedFiles, setUploadedFiles] = (0, react_1.useState)([]);
|
|
24
21
|
const [uploadProgress, setUploadProgress] = (0, react_1.useState)({});
|
|
@@ -34,6 +31,9 @@ const FilesUploadField = (props) => {
|
|
|
34
31
|
value.forEach((f) => setUploadProgress((prev) => ({ ...prev, [f.id]: 100 })));
|
|
35
32
|
}
|
|
36
33
|
}, [value]);
|
|
34
|
+
if (readOnly && (!value || value.length === 0)) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
37
|
const handleFileUpload = async (files, setFieldValue) => {
|
|
38
38
|
const filesWithIds = [];
|
|
39
39
|
const newFiles = [];
|
|
@@ -97,6 +97,6 @@ const FilesUploadField = (props) => {
|
|
|
97
97
|
...(formLocalization?.fields?.FilesUploadField ?? {}),
|
|
98
98
|
...(uiSchema["ui:localization"] ?? {}),
|
|
99
99
|
};
|
|
100
|
-
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: (0, jsx_runtime_1.jsx)(FilesUploadFieldInput, { ...inputProps, readOnly: readOnly, acceptedFiletypes: inputProps?.acceptedFiletypes, deleteFileAriaLabel: localization.deleteFileAriaLabel, fileInfoText: localization.fileInfoText, handleFileUpload: handleFileUpload, handleRemoveFile: handleRemoveFile, hideFileTypeIcon: inputProps?.fileTypeIcon?.hidden, hideFileSize: inputProps?.fileSize?.hidden, hideRemoveButton: inputProps?.removeButton?.hidden, hideUploadIcon: inputProps?.uploadIcon?.hidden, infoText: localization.infoText, infoTextSingle: localization.infoTextSingle, allowMultipleFiles: inputProps?.allowMultipleFiles, name: name, orText: localization.orText, removeButton: localization.removeButton, renderFile: inputProps?.renderFile, setFieldValue: setFieldValue, uploadButtonText: localization.uploadButtonText, uploadedFiles: uploadedFiles, uploadProgress: uploadProgress, value: value }) }));
|
|
100
|
+
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: (0, jsx_runtime_1.jsx)(FilesUploadFieldInput, { ...inputProps, readOnly: readOnly, acceptedFiletypes: inputProps?.acceptedFiletypes, deleteFileAriaLabel: localization.deleteFileAriaLabel, fileInfoText: localization.fileInfoText, handleFileUpload: handleFileUpload, handleRemoveFile: handleRemoveFile, hideFileTypeIcon: inputProps?.fileTypeIcon?.hidden, hideFileSize: inputProps?.fileSize?.hidden, hideRemoveButton: inputProps?.removeButton?.hidden, hideUploadIcon: inputProps?.uploadIcon?.hidden, infoText: localization.infoText, infoTextSingle: localization.infoTextSingle, allowMultipleFiles: inputProps?.allowMultipleFiles ?? true, name: name, orText: localization.orText, removeButton: localization.removeButton, renderFile: inputProps?.renderFile, setFieldValue: setFieldValue, uploadButtonText: localization.uploadButtonText, uploadedFiles: uploadedFiles, uploadProgress: uploadProgress, value: value }) }));
|
|
101
101
|
};
|
|
102
102
|
exports.FilesUploadField = FilesUploadField;
|
|
@@ -13,9 +13,6 @@ export const FilesUploadField = (props) => {
|
|
|
13
13
|
const { setFieldValue, values } = useFormikContext();
|
|
14
14
|
const value = useMemo(() => getIn(values, name) ?? [], [values, name]);
|
|
15
15
|
const readOnly = schema.readOnly ?? false;
|
|
16
|
-
if (readOnly && (!value || value.length === 0)) {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
16
|
const { uploadFiles, removeFile } = useContext(FilesUploadContext);
|
|
20
17
|
const [uploadedFiles, setUploadedFiles] = useState([]);
|
|
21
18
|
const [uploadProgress, setUploadProgress] = useState({});
|
|
@@ -31,6 +28,9 @@ export const FilesUploadField = (props) => {
|
|
|
31
28
|
value.forEach((f) => setUploadProgress((prev) => ({ ...prev, [f.id]: 100 })));
|
|
32
29
|
}
|
|
33
30
|
}, [value]);
|
|
31
|
+
if (readOnly && (!value || value.length === 0)) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
34
|
const handleFileUpload = async (files, setFieldValue) => {
|
|
35
35
|
const filesWithIds = [];
|
|
36
36
|
const newFiles = [];
|
|
@@ -94,5 +94,5 @@ export const FilesUploadField = (props) => {
|
|
|
94
94
|
...(formLocalization?.fields?.FilesUploadField ?? {}),
|
|
95
95
|
...(uiSchema["ui:localization"] ?? {}),
|
|
96
96
|
};
|
|
97
|
-
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: _jsx(FilesUploadFieldInput, { ...inputProps, readOnly: readOnly, acceptedFiletypes: inputProps?.acceptedFiletypes, deleteFileAriaLabel: localization.deleteFileAriaLabel, fileInfoText: localization.fileInfoText, handleFileUpload: handleFileUpload, handleRemoveFile: handleRemoveFile, hideFileTypeIcon: inputProps?.fileTypeIcon?.hidden, hideFileSize: inputProps?.fileSize?.hidden, hideRemoveButton: inputProps?.removeButton?.hidden, hideUploadIcon: inputProps?.uploadIcon?.hidden, infoText: localization.infoText, infoTextSingle: localization.infoTextSingle, allowMultipleFiles: inputProps?.allowMultipleFiles, name: name, orText: localization.orText, removeButton: localization.removeButton, renderFile: inputProps?.renderFile, setFieldValue: setFieldValue, uploadButtonText: localization.uploadButtonText, uploadedFiles: uploadedFiles, uploadProgress: uploadProgress, value: value }) }));
|
|
97
|
+
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: _jsx(FilesUploadFieldInput, { ...inputProps, readOnly: readOnly, acceptedFiletypes: inputProps?.acceptedFiletypes, deleteFileAriaLabel: localization.deleteFileAriaLabel, fileInfoText: localization.fileInfoText, handleFileUpload: handleFileUpload, handleRemoveFile: handleRemoveFile, hideFileTypeIcon: inputProps?.fileTypeIcon?.hidden, hideFileSize: inputProps?.fileSize?.hidden, hideRemoveButton: inputProps?.removeButton?.hidden, hideUploadIcon: inputProps?.uploadIcon?.hidden, infoText: localization.infoText, infoTextSingle: localization.infoTextSingle, allowMultipleFiles: inputProps?.allowMultipleFiles ?? true, name: name, orText: localization.orText, removeButton: localization.removeButton, renderFile: inputProps?.renderFile, setFieldValue: setFieldValue, uploadButtonText: localization.uploadButtonText, uploadedFiles: uploadedFiles, uploadProgress: uploadProgress, value: value }) }));
|
|
98
98
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nolwenture/formik-jsonschema-form",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.11",
|
|
4
4
|
"description": "Formik form generation from json schema",
|
|
5
5
|
"author": "anttivikman <antti.vikman@nolwenture.com>",
|
|
6
6
|
"contributors": [
|
|
@@ -125,4 +125,4 @@
|
|
|
125
125
|
"last 1 safari version"
|
|
126
126
|
]
|
|
127
127
|
}
|
|
128
|
-
}
|
|
128
|
+
}
|