UNPKG

synapse-react-client

Version:

[![Build Status](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client.svg?branch=main)](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synaps

26 lines 2.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ProjectListDetails = void 0; var tslib_1 = require("tslib"); var react_1 = (0, tslib_1.__importStar)(require("react")); var react_error_boundary_1 = require("react-error-boundary"); var ErrorUtils_1 = require("../../../../utils/ErrorUtils"); var useProjects_1 = require("../../../../utils/hooks/SynapseAPI/useProjects"); var DetailsView_1 = require("../view/DetailsView"); var useGetIsAllSelectedInfiniteList_1 = (0, tslib_1.__importDefault)(require("../../../../utils/hooks/useGetIsAllSelectedInfiniteList")); var ProjectListDetails = function (_a) { var _b; var projectsParams = _a.projectsParams, sharedProps = (0, tslib_1.__rest)(_a, ["projectsParams"]); var _c = (0, useProjects_1.useGetProjectsInfinite)(projectsParams), data = _c.data, isLoading = _c.isLoading, isFetchingNextPage = _c.isFetchingNextPage, hasNextPage = _c.hasNextPage, fetchNextPage = _c.fetchNextPage, isError = _c.isError, error = _c.error; var handleError = (0, react_error_boundary_1.useErrorHandler)(); var projects = (_b = data === null || data === void 0 ? void 0 : data.pages.flatMap(function (page) { return page.results; })) !== null && _b !== void 0 ? _b : []; var selectAllCheckboxState = (0, useGetIsAllSelectedInfiniteList_1.default)(projects, sharedProps.selected, sharedProps.selectableTypes, hasNextPage, fetchNextPage, isFetchingNextPage); (0, react_1.useEffect)(function () { if (isError && error) { handleError((0, ErrorUtils_1.toError)(error)); } }, [isError, error, handleError]); return (react_1.default.createElement(DetailsView_1.DetailsView, (0, tslib_1.__assign)({ entities: projects, isLoading: isLoading, hasNextPage: hasNextPage, fetchNextPage: fetchNextPage, isFetchingNextPage: isFetchingNextPage, selectAllIsChecked: selectAllCheckboxState }, sharedProps))); }; exports.ProjectListDetails = ProjectListDetails; //# sourceMappingURL=ProjectListDetails.js.map