UNPKG

quiz-interactions

Version:

A React UI component Library for quiz interaction types.

72 lines (53 loc) 2.42 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireDefault(require("react")); var _uiElements = require("@instructure/ui-elements"); var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/lib/format-message")); var _default = function _default(depsAreLoaded, loadDeps) { return function (WrappedComponent) { var _class, _temp; return _temp = _class = /*#__PURE__*/ function (_WrappedComponent) { (0, _inherits2.default)(Wrapper, _WrappedComponent); function Wrapper(props) { var _this; (0, _classCallCheck2.default)(this, Wrapper); _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(Wrapper).call(this, props)); var depsLoaded = depsAreLoaded(); _this.state = Object.assign({}, _this.state, { depsLoaded: depsLoaded }); if (!depsLoaded) { loadDeps().then(function () { _this.setState({ depsLoaded: true }); }); } return _this; } (0, _createClass2.default)(Wrapper, [{ key: "render", value: function render() { return this.state.depsLoaded ? (0, _get2.default)((0, _getPrototypeOf2.default)(Wrapper.prototype), "render", this).call(this) : _react.default.createElement(_uiElements.Spinner, { renderTitle: (0, _formatMessage.default)('loading') }); } }]); Wrapper.displayName = "Wrapper"; return Wrapper; }(WrappedComponent), _class.displayName = "".concat(_class.name, "(").concat(WrappedComponent.displayName, ")"), _temp; }; }; exports.default = _default;