synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
58 lines • 5.18 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var React = (0, tslib_1.__importStar)(require("react"));
var utils_1 = require("../../utils/");
var sqlFunctions_1 = require("../../utils/functions/sqlFunctions");
var useEntity_1 = require("../../utils/hooks/SynapseAPI/useEntity");
var SynapseConstants_1 = require("../../utils/SynapseConstants");
var SynapseContext_1 = require("../../utils/SynapseContext");
var synapseTypes_1 = require("../../utils/synapseTypes");
var download_list_1 = require("../download_list");
var ErrorBanner_1 = require("../ErrorBanner");
var FullTextSearch_1 = (0, tslib_1.__importDefault)(require("../FullTextSearch"));
var ModalDownload_1 = (0, tslib_1.__importDefault)(require("../ModalDownload"));
var QueryWrapper_1 = (0, tslib_1.__importDefault)(require("../QueryWrapper"));
var SearchV2_1 = (0, tslib_1.__importDefault)(require("../SearchV2"));
var FacetNav_1 = (0, tslib_1.__importDefault)(require("../widgets/facet-nav/FacetNav"));
var QueryFilter_1 = require("../widgets/query-filter/QueryFilter");
var FilterAndView_1 = (0, tslib_1.__importDefault)(require("./FilterAndView"));
var QueryFilterToggleButton_1 = (0, tslib_1.__importDefault)(require("./QueryFilterToggleButton"));
var TopLevelControls_1 = (0, tslib_1.__importDefault)(require("../table/TopLevelControls"));
var QueryWrapperPlotNav = function (props) {
var _a = React.useState(false), showExportMetadata = _a[0], setShowExportMetadata = _a[1];
var searchParams = props.searchParams, sql = props.sql, sqlOperator = props.sqlOperator, tableConfiguration = props.tableConfiguration, name = props.name, cardConfiguration = props.cardConfiguration, facetsToPlot = props.facetsToPlot, facetsToFilter = props.facetsToFilter, hideDownload = props.hideDownload, hideQueryCount = props.hideQueryCount, searchConfiguration = props.searchConfiguration, _b = props.limit, limit = _b === void 0 ? SynapseConstants_1.DEFAULT_PAGE_SIZE : _b, downloadCartPageUrl = props.downloadCartPageUrl;
var sqlUsed = (0, sqlFunctions_1.insertConditionsFromSearchParams)(sql, searchParams, sqlOperator);
var entityId = (0, sqlFunctions_1.parseEntityIdFromSqlStatement)(sqlUsed);
var entity = (0, useEntity_1.useGetEntity)(entityId).data;
var initQueryRequest = {
entityId: entityId,
concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',
partMask: utils_1.SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS |
utils_1.SynapseConstants.BUNDLE_MASK_QUERY_FACETS |
utils_1.SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |
utils_1.SynapseConstants.BUNDLE_MASK_QUERY_RESULTS,
query: {
sql: sqlUsed,
limit: limit,
offset: 0,
},
};
return (React.createElement("div", { className: "QueryWrapperPlotNav" },
React.createElement(SynapseContext_1.SynapseContextConsumer, null, function (context) { return (React.createElement(QueryWrapper_1.default, (0, tslib_1.__assign)({}, props, { token: context === null || context === void 0 ? void 0 : context.accessToken, initQueryRequest: initQueryRequest }), function (queryWrapperChildProps) {
return (React.createElement(React.Fragment, null,
entity &&
(0, synapseTypes_1.isTableEntity)(entity) &&
entity.isSearchEnabled ? (React.createElement(FullTextSearch_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps))) : (React.createElement(SearchV2_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, searchConfiguration))),
React.createElement(ErrorBanner_1.ErrorBanner, (0, tslib_1.__assign)({}, queryWrapperChildProps)),
React.createElement(download_list_1.DownloadConfirmation, (0, tslib_1.__assign)({}, queryWrapperChildProps, { downloadCartPageUrl: downloadCartPageUrl })),
React.createElement(TopLevelControls_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, { showColumnSelection: tableConfiguration !== undefined, name: name, entityId: entityId, sql: sqlUsed, hideDownload: hideDownload, hideQueryCount: hideQueryCount })),
React.createElement(QueryFilter_1.QueryFilter, (0, tslib_1.__assign)({}, queryWrapperChildProps, props)),
React.createElement(QueryFilterToggleButton_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps)),
React.createElement(FacetNav_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, { facetsToPlot: facetsToPlot, showNotch: false })),
React.createElement(FilterAndView_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, { facetsToFilter: facetsToFilter, tableConfiguration: tableConfiguration, hideDownload: hideDownload, cardConfiguration: cardConfiguration })),
showExportMetadata && (React.createElement(ModalDownload_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, { onClose: function () { return setShowExportMetadata(false); } })))));
})); })));
};
exports.default = QueryWrapperPlotNav;
//# sourceMappingURL=QueryWrapperPlotNav.js.map