1 | import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
2 | import _createClass from "@babel/runtime/helpers/esm/createClass";
|
3 | import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
4 | import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
5 | import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
|
6 | import _inherits from "@babel/runtime/helpers/esm/inherits";
|
7 | import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
8 | import * as PropTypes from 'prop-types';
|
9 | import * as React from 'react';
|
10 | import handleRef from './handleRef';
|
11 | import { refPropType } from './types';
|
12 |
|
13 | var RefForward =
|
14 |
|
15 | function (_React$Component) {
|
16 | _inherits(RefForward, _React$Component);
|
17 |
|
18 | function RefForward() {
|
19 | var _getPrototypeOf2;
|
20 |
|
21 | var _this;
|
22 |
|
23 | _classCallCheck(this, RefForward);
|
24 |
|
25 | for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
26 | args[_key] = arguments[_key];
|
27 | }
|
28 |
|
29 | _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(RefForward)).call.apply(_getPrototypeOf2, [this].concat(args)));
|
30 |
|
31 | _defineProperty(_assertThisInitialized(_this), "handleRefOverride", function (node) {
|
32 | var _this$props = _this.props,
|
33 | children = _this$props.children,
|
34 | innerRef = _this$props.innerRef;
|
35 | handleRef(children.ref, node);
|
36 | handleRef(innerRef, node);
|
37 | });
|
38 |
|
39 | return _this;
|
40 | }
|
41 |
|
42 | _createClass(RefForward, [{
|
43 | key: "render",
|
44 | value: function render() {
|
45 | var children = this.props.children;
|
46 | return React.cloneElement(children, {
|
47 | ref: this.handleRefOverride
|
48 | });
|
49 | }
|
50 | }]);
|
51 |
|
52 | return RefForward;
|
53 | }(React.Component);
|
54 |
|
55 | _defineProperty(RefForward, "displayName", 'RefForward');
|
56 |
|
57 | _defineProperty(RefForward, "propTypes", process.env.NODE_ENV !== 'production' ? {
|
58 | children: PropTypes.element.isRequired,
|
59 | innerRef: refPropType.isRequired
|
60 | } : {});
|
61 |
|
62 | export { RefForward as default }; |
\ | No newline at end of file |