UNPKG

@shopify/react-async

Version:

Tools for creating powerful, asynchronously-loaded React components.

32 lines (31 loc) 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var React = tslib_1.__importStar(require("react")); var prefetch_1 = require("./context/prefetch"); var ConnectedPrefetchRoute = /** @class */ (function (_super) { tslib_1.__extends(ConnectedPrefetchRoute, _super); function ConnectedPrefetchRoute() { return _super !== null && _super.apply(this, arguments) || this; } ConnectedPrefetchRoute.prototype.componentDidMount = function () { var _a = this.props, manager = _a.manager, path = _a.path, render = _a.render; this.unregister = manager.register({ path: path, render: render, }); }; ConnectedPrefetchRoute.prototype.componentWillUnmount = function () { if (this.unregister) { this.unregister(); } }; ConnectedPrefetchRoute.prototype.render = function () { return null; }; return ConnectedPrefetchRoute; }(React.Component)); function PrefetchRoute(props) { return (React.createElement(prefetch_1.PrefetchContext.Consumer, null, function (manager) { return (React.createElement(ConnectedPrefetchRoute, tslib_1.__assign({ manager: manager }, props))); })); } exports.PrefetchRoute = PrefetchRoute;