@gravity-ui/data-source
Version:
A wrapper around data fetching
28 lines • 1.2 kB
JavaScript
import React from 'react';
import { QueryClientProvider } from '@tanstack/react-query';
import { DataManagerProvider } from '../react/DataManagerProvider';
import { jsx as _jsx } from "react/jsx-runtime";
export var DataSourceProvider = function DataSourceProvider(_ref) {
var children = _ref.children,
dataManager = _ref.dataManager;
React.useEffect(function () {
if (!dataManager.queryNormalizer) {
return undefined;
}
dataManager.queryNormalizer.subscribe();
return function () {
var _dataManager$queryNor, _dataManager$queryNor2;
(_dataManager$queryNor = dataManager.queryNormalizer) === null || _dataManager$queryNor === void 0 || _dataManager$queryNor.unsubscribe();
(_dataManager$queryNor2 = dataManager.queryNormalizer) === null || _dataManager$queryNor2 === void 0 || _dataManager$queryNor2.clear();
};
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
return /*#__PURE__*/_jsx(QueryClientProvider, {
client: dataManager.queryClient,
children: /*#__PURE__*/_jsx(DataManagerProvider, {
dataManager: dataManager,
children: children
})
});
};
// #sourceMappingURL=DataSourceProvider.js.map