zoapp-ui
Version:
Javascript ES7 React UI Material Components extensions
78 lines (60 loc) • 2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = require("babel-runtime/helpers/extends");
var _extends3 = _interopRequireDefault(_extends2);
var _objectWithoutProperties2 = require("babel-runtime/helpers/objectWithoutProperties");
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
var _propTypes = require("prop-types");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _zrmc = require("zrmc");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FileInput = function FileInput(_ref) {
var accept = _ref.accept,
onChange = _ref.onChange,
children = _ref.children,
multiple = _ref.multiple,
props = (0, _objectWithoutProperties3.default)(_ref, ["accept", "onChange", "children", "multiple"]);
var fileInputRef = void 0;
return _react2.default.createElement(
"div",
{ style: { display: "inline-block" } },
_react2.default.createElement(
_zrmc.Button,
(0, _extends3.default)({}, props, {
onClick: function onClick() {
fileInputRef.click();
}
}),
children
),
_react2.default.createElement("input", {
type: "file",
style: { display: "none" },
accept: accept,
ref: function ref(input) {
fileInputRef = input;
},
onChange: onChange,
multiple: multiple
})
);
}; /**
* Copyright (c) 2015-present, CWB SAS
*
* This source code is licensed under the GPL v2.0+ license found in the
* LICENSE file in the root directory of this source tree.
*/
FileInput.defaultProps = {
accept: "*/*"
};
FileInput.propTypes = {
onChange: _propTypes2.default.func.isRequired,
accept: _propTypes2.default.string,
children: _propTypes2.default.node,
multiple: _propTypes2.default.bool
};
exports.default = FileInput;