synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
47 lines • 3.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getQueryRequest = void 0;
var tslib_1 = require("tslib");
var React = (0, tslib_1.__importStar)(require("react"));
var QueryWrapper_1 = (0, tslib_1.__importDefault)(require("../../QueryWrapper"));
var sqlFunctions_1 = require("../../../utils/functions/sqlFunctions");
var utils_1 = require("../../../utils");
var ErrorBanner_1 = require("../../ErrorBanner");
var FacetPlotsCard_1 = (0, tslib_1.__importDefault)(require("./FacetPlotsCard"));
var SynapseContext_1 = require("../../../utils/SynapseContext");
function getQueryRequest(sql, selectFacetColumnName, selectFacetColumnValue) {
var entityId = (0, sqlFunctions_1.parseEntityIdFromSqlStatement)(sql);
return {
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: sql,
offset: 0,
limit: 25,
selectedFacets: [
{
columnName: selectFacetColumnName,
facetValues: [selectFacetColumnValue],
concreteType: 'org.sagebionetworks.repo.model.table.FacetColumnValuesRequest',
},
],
},
};
}
exports.getQueryRequest = getQueryRequest;
var QueryPerFacetPlotsCard = function (props) {
var title = props.title, description = props.description, sql = props.sql, facetsToPlot = props.facetsToPlot, rgbIndex = props.rgbIndex, selectFacetColumnName = props.selectFacetColumnName, selectFacetColumnValue = props.selectFacetColumnValue, detailsPagePath = props.detailsPagePath, rest = (0, tslib_1.__rest)(props, ["title", "description", "sql", "facetsToPlot", "rgbIndex", "selectFacetColumnName", "selectFacetColumnValue", "detailsPagePath"]);
var initQueryRequest = getQueryRequest(sql, selectFacetColumnName, selectFacetColumnValue);
return (React.createElement("div", { className: "QueryPerFacetPlotsCard" },
React.createElement(SynapseContext_1.SynapseContextConsumer, null, function (context) { return (React.createElement(QueryWrapper_1.default, (0, tslib_1.__assign)({}, rest, { token: context === null || context === void 0 ? void 0 : context.accessToken, initQueryRequest: initQueryRequest }), function (queryWrapperChildProps) {
return (React.createElement(React.Fragment, null,
React.createElement(ErrorBanner_1.ErrorBanner, (0, tslib_1.__assign)({}, queryWrapperChildProps)),
React.createElement(FacetPlotsCard_1.default, (0, tslib_1.__assign)({}, queryWrapperChildProps, { title: title, description: description, facetsToPlot: facetsToPlot, rgbIndex: rgbIndex, detailsPagePath: detailsPagePath }))));
})); })));
};
exports.default = QueryPerFacetPlotsCard;
//# sourceMappingURL=QueryPerFacetPlotsCard.js.map