UNPKG

@navikt/ds-react

Version:

React components from the Norwegian Labour and Welfare Administration.

33 lines 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useFileUpload = void 0; const react_1 = require("react"); const hooks_1 = require("../../util/hooks"); const validate_files_1 = require("./utils/validate-files"); const useFileUpload = ({ ref, accept, onSelect, validator, maxSizeInBytes, disabled, }) => { const inputRef = (0, react_1.useRef)(null); const mergedRef = (0, hooks_1.useMergeRefs)(inputRef, ref); const upload = (fileList) => { const { files, partitionedFiles } = (0, validate_files_1.validateFiles)(Array.from(fileList), accept, validator, maxSizeInBytes); onSelect(files, partitionedFiles); }; const onChange = (event) => { const fileList = event.target.files; if (!fileList) { return; } if (!disabled) { upload(fileList); } // Resets the value to make it is possible to upload the same file several consecutive times event.target.value = ""; }; return { upload, onChange, inputRef, mergedRef, }; }; exports.useFileUpload = useFileUpload; //# sourceMappingURL=useFileUpload.js.map