UNPKG

@polkadot/react-api

Version:

A collection of RxJs React components the Polkadot JS API

40 lines (30 loc) 1.28 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = withApi; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireDefault(require("react")); var _util = require("@polkadot/util"); var _ApiContext = require("../ApiContext"); // Copyright 2017-2020 @polkadot/react-api authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. function withApi(Inner, defaultProps = {}) { var _temp; return _temp = class WithApi extends _react.default.PureComponent { constructor(...args) { super(...args); this.component = _react.default.createRef(); } render() { return _react.default.createElement(_ApiContext.ApiConsumer, null, apiProps => { (0, _util.assert)(apiProps && apiProps.api, 'Application root must be wrapped inside \'react-api/Api\' to provide API context'); return _react.default.createElement(Inner, (0, _extends2.default)({}, defaultProps, apiProps, this.props, { ref: this.component })); }); } }, _temp; }