synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
48 lines (47 loc) • 1.85 kB
JavaScript
import { displayToast as w } from "../../components/ToastMessage/ToastMessage.js";
import * as f 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 F } 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 T } from "../../utils/context/SynapseContext.js";
import { addDrsUriToSql as S } from "./useExportToCavatica.js";
function _(t, e, r = "id", s = "name", a = "currentVersion", n = !1) {
const { accessToken: i } = T(), p = ",", l = !0, d = !1, c = t.query.sql, m = n ? "https://dev.pluto.bio/synapse/drs" : "https://app.pluto.bio/synapse/drs";
return async () => {
try {
const o = S(
c,
e,
r,
s,
a
), u = {
sql: o,
entityId: F(o),
selectedFacets: t.query.selectedFacets,
concreteType: "org.sagebionetworks.repo.model.table.DownloadFromTableRequest",
writeHeader: l,
includeRowIdAndRowVersion: d,
csvTableDescriptor: { separator: p },
additionalFilters: t.query.additionalFilters
}, y = await f.createTableCsvForDownload(
u,
i
), b = `${m}?DRS_URI=${encodeURIComponent(
`drs://repo-prod.prod.sagebase.org/fh${y.resultsFileHandleId}`
)}`;
window.open(b, "_blank");
} catch (o) {
w(o.reason, "danger");
}
};
}
export {
_ as useExportToPluto
};
//# sourceMappingURL=useExportToPluto.js.map