@gravity-ui/data-source
Version:
A wrapper around data fetching
30 lines (28 loc) • 1.15 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useQueryData = void 0;
var _hooks = require("../impl/infinite/hooks");
var _hooks2 = require("../impl/plain/hooks");
var _notReachable = require("../utils/notReachable");
var _useQueryContext = require("./useQueryContext");
var useQueryData = exports.useQueryData = function useQueryData(dataSource, params, options) {
var context = (0, _useQueryContext.useQueryContext)();
var type = dataSource.type;
var state;
// Do not change data source type in the same hook call
if (type === 'plain') {
// eslint-disable-next-line react-hooks/rules-of-hooks
state = (0, _hooks2.usePlainQueryData)(context, dataSource, params, options);
} else if (type === 'infinite') {
// eslint-disable-next-line react-hooks/rules-of-hooks
state = (0, _hooks.useInfiniteQueryData)(context, dataSource, params,
// TS can't calculate types in this place
options);
} else {
return (0, _notReachable.notReachable)(type, "Data Source type must be plain or infinite, got: ".concat(type));
}
return state;
};
// #sourceMappingURL=useQueryData.js.map
;