@vimeo/iris
Version:
Vimeo Design System
18 lines (15 loc) • 1.13 kB
JavaScript
import { b as __rest, c as __assign } from '../../../tslib.es6-7f0e734f.js';
import React__default, { useRef } from 'react';
import { Hidden } from './FileUpload.style.esm.js';
import { withIris } from '../../../utils/HOCs/withIris.esm.js';
import 'styled-components';
var FileUpload = withIris(FileUploadComponent);
function FileUploadComponent(_a) {
var children = _a.children; _a.defaultValue; var forwardRef = _a.forwardRef, onChange = _a.onChange, disabled = _a.disabled, accept = _a.accept, multiple = _a.multiple, name = _a.name, props = __rest(_a, ["children", "defaultValue", "forwardRef", "onChange", "disabled", "accept", "multiple", "name"]);
var ref = useRef(null);
var onClick = function () { return ref.current && ref.current.click(); };
return (React__default.createElement("div", __assign({ onClick: onClick, ref: forwardRef, style: { display: 'inline-flex' } }, props),
React__default.createElement(Hidden, { tabIndex: -1, ref: ref, type: "file", accept: accept, disabled: disabled, onChange: onChange, multiple: multiple, name: name }),
children));
}
export { FileUpload };