synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
42 lines (41 loc) • 1.44 kB
JavaScript
import { displayToast as c } from "../../components/ToastMessage/ToastMessage.js";
import { parseEntityIdFromSqlStatement as m } from "../../utils/functions/SqlFunctions.js";
import { useDownloadTableQueryResultAsPFB as y } from "../table/useDownloadTable.js";
import { addDrsUriToSql as b } from "./useExportToCavatica.js";
function g(t, a, o = "id", s = "name", e = "currentVersion") {
const { mutateAsync: n } = y();
return async () => {
const i = t.query.sql;
try {
const r = m(
t.query.sql
), p = {
sql: b(
i,
a,
o,
s,
e,
!0
// remove spaces from select columns
),
concreteType: "org.sagebionetworks.repo.model.table.DownloadPFBRequest",
entityId: r,
selectedFacets: t.query.selectedFacets,
additionalFilters: t.query.additionalFilters,
// Note - backend will respond with a 500 if illegal characters found in pfbEntityName (such as '-')
pfbEntityName: `SynapseExport${r}`,
pfbEntityIdColumnNames: [o, e]
}, d = await n(p), l = `https://app.terra.bio/#import-data?format=pfb&url=${encodeURIComponent(
`drs://repo-prod.prod.sagebase.org/fh${d.resultsFileHandleId}`
)}`;
window.open(l, "_blank");
} catch (r) {
c(r.reason, "danger");
}
};
}
export {
g as useExportToTerra
};
//# sourceMappingURL=useExportToTerra.js.map