UNPKG

synapse-react-client

Version:

[![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synapse-react-client) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettie

54 lines (53 loc) 2.16 kB
import { displayToast as f } from "../../components/ToastMessage/ToastMessage.js"; import * as w from "../../synapse-client/SynapseClient.js"; import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode"; import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse"; import "@sage-bionetworks/synapse-client/util/SynapseClientError"; import { parseEntityIdFromSqlStatement as T } from "../../utils/functions/SqlFunctions.js"; import "../../utils/functions/EntityTypeUtils.js"; import "../../utils/SynapseConstants.js"; import "lodash-es"; import "@sage-bionetworks/synapse-client/util/synapseClientFetch"; import { useSynapseContext as b } from "../../utils/context/SynapseContext.js"; function g(r, t, s, a, n, i = !1) { const c = t?.filter((e) => e.name != "name").map((e) => i && e.name.includes(" ") ? `"${e.name}" as "${e.name.replace(/\s/g, "")}"` : `"${e.name}"`).join(","); return `SELECT CONCAT('drs://repo-prod.prod.sagebase.org/syn', ${s}, '.', ${n}) AS drs_uri, ${a} as name, ${c} FROM ${r.slice( r.toLowerCase().indexOf("from") + 4 + 1 )}`; } function h(r, t, s = "id", a = "name", n = "currentVersion") { const { accessToken: i } = b(), c = ",", e = !0, m = !1, d = r.query.sql; return async () => { try { const o = g( d, t, s, a, n ), p = { sql: o, entityId: T(o), selectedFacets: r.query.selectedFacets, concreteType: "org.sagebionetworks.repo.model.table.DownloadFromTableRequest", writeHeader: e, includeRowIdAndRowVersion: m, csvTableDescriptor: { separator: c }, additionalFilters: r.query.additionalFilters }, l = await w.createTableCsvForDownload( p, i ), u = `https://cavatica.sbgenomics.com/import-redirect/drs/csv?DRS_URI=${encodeURIComponent( `drs://repo-prod.prod.sagebase.org/fh${l.resultsFileHandleId}` )}`; window.open(u, "_blank"); } catch (o) { f(o.reason, "danger"); } }; } export { g as addDrsUriToSql, h as useExportToCavatica }; //# sourceMappingURL=useExportToCavatica.js.map