synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
51 lines (50 loc) • 1.25 kB
JavaScript
import { jsxs as F, jsx as i } from "react/jsx-runtime";
import g from "./MultiFileUploadProgress.js";
import P from "./UploadFilePanel.js";
import { useUploadFiles as h } from "../../../utils/hooks/useUploadFileEntity/useUploadFiles.js";
import { noop as l } from "lodash-es";
import { forwardRef as v, useEffect as s, useImperativeHandle as w } from "react";
const D = v(function(d, n) {
const {
allowMultipleUpload: m,
onStateChange: r = l,
onUploadReady: a = l,
onFileUploadComplete: u = l
} = d, { startUpload: f, state: o, uploadProgress: U } = h({
onUploadComplete: (p, e) => (u(e), Promise.resolve())
});
s(() => {
r(o);
}, [o, r]), s(() => {
a();
}, [a]);
function t(p) {
const e = Array.from(p).map((c) => ({
file: c
}));
f(...e);
}
return w(n, () => ({
handleUploads: t
})), /* @__PURE__ */ F("div", { children: [
/* @__PURE__ */ i(
P,
{
onUploadFileList: t,
allowMultipleFiles: m,
disableDragAndDrop: !0
}
),
/* @__PURE__ */ i(
g,
{
uploaderState: o,
uploadProgress: U
}
)
] });
});
export {
D as BasicFileHandleUpload
};
//# sourceMappingURL=BasicFileHandleUpload.js.map