import React from "react";
import ReactCSSTransitionGroup from "react-addons-css-transition-group";
import { DropTarget } from "react-dnd";
import { EventEmitter, Icon } from "../../components/";
import { t } from "../../locales/";
import "./filezone.scss";
function FileZoneComponent({ connectDropFile, fileIsOver }) {
return connectDropFile(
{ t("DROP HERE TO UPLOAD") }
,
);
}
const HOCDropTargetForFSFile = (Cmp) => {
return DropTarget(
"__NATIVE_FILE__", {
drop(props, monitor) {
props.emit("file.upload", props.path, monitor.getItem());
},
},
(connect, monitor) => ({
connectDropFile: connect.dropTarget(),
fileIsOver: monitor.isOver(),
}),
)(Cmp);
};
export const FileZone = EventEmitter(HOCDropTargetForFSFile(FileZoneComponent));
function MobileFileUploadComponent({ emit, path, accessRight }) {
if (!window.CONFIG["upload_button"] && /(Android|iPad|iPhone)/.test(navigator.userAgent) === false) {
return null;
} else if (accessRight.can_create_file === false || accessRight.can_create_directory === false) {
return null;
}
const onUpload = (e) => {
emit("file.upload", path, e);
};
return (
);
}
export const MobileFileUpload = EventEmitter(MobileFileUploadComponent);