@wordpress/components
Version:
UI components for WordPress.
48 lines (42 loc) • 921 B
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import { createElement } from "@wordpress/element";
/**
* WordPress dependencies
*/
import { useRef } from '@wordpress/element';
/**
* Internal dependencies
*/
import Button from '../button';
function FormFileUpload({
accept,
children,
multiple = false,
onChange,
render,
...props
}) {
const ref = useRef();
const openFileDialog = () => {
ref.current.click();
};
const ui = render ? render({
openFileDialog
}) : createElement(Button, _extends({
onClick: openFileDialog
}, props), children);
return createElement("div", {
className: "components-form-file-upload"
}, ui, createElement("input", {
type: "file",
ref: ref,
multiple: multiple,
style: {
display: 'none'
},
accept: accept,
onChange: onChange
}));
}
export default FormFileUpload;
//# sourceMappingURL=index.js.map