UNPKG

@gravity-ui/data-source

Version:
38 lines (37 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DataLoader = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _react = _interopRequireDefault(require("react")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } var DataLoader = exports.DataLoader = function DataLoader(_ref) { var status = _ref.status, error = _ref.error, errorActionProp = _ref.errorAction, LoadingView = _ref.LoadingView, ErrorView = _ref.ErrorView, loadingViewProps = _ref.loadingViewProps, errorViewProps = _ref.errorViewProps, children = _ref.children; var errorAction = _react.default.useMemo(function () { return typeof errorActionProp === 'function' ? { handler: errorActionProp } : errorActionProp; }, [errorActionProp]); if (status === 'loading') { return /*#__PURE__*/(0, _jsxRuntime.jsx)(LoadingView, (0, _objectSpread2.default)({}, loadingViewProps)); } if (status === 'error') { return /*#__PURE__*/(0, _jsxRuntime.jsx)(ErrorView, (0, _objectSpread2.default)({ error: error, action: errorAction }, errorViewProps)); } return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, { children: children }); }; // #sourceMappingURL=DataLoader.js.map