synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
30 lines • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useSearchInfinite = exports.useSearch = void 0;
var tslib_1 = require("tslib");
var react_query_1 = require("react-query");
var __1 = require("../..");
var SynapseContext_1 = require("../../SynapseContext");
function useSearch(query, options) {
var accessToken = (0, SynapseContext_1.useSynapseContext)().accessToken;
return (0, react_query_1.useQuery)(['search', accessToken, query], function () { return __1.SynapseClient.searchEntities(query, accessToken); }, options);
}
exports.useSearch = useSearch;
function useSearchInfinite(query, options) {
var _this = this;
var accessToken = (0, SynapseContext_1.useSynapseContext)().accessToken;
return (0, react_query_1.useInfiniteQuery)(['search', accessToken, query], function (context) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
return (0, tslib_1.__generator)(this, function (_a) {
return [2 /*return*/, __1.SynapseClient.searchEntities((0, tslib_1.__assign)((0, tslib_1.__assign)({}, query), { start: context.pageParam }), accessToken)];
});
}); }, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, options), { getNextPageParam: function (prevPage) {
if (prevPage.start + prevPage.hits.length === prevPage.found) {
return null;
}
else {
return prevPage.start + prevPage.hits.length;
}
} }));
}
exports.useSearchInfinite = useSearchInfinite;
//# sourceMappingURL=useSearch.js.map