synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
44 lines • 2.77 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = (0, tslib_1.__importDefault)(require("react"));
var SynapseClient_1 = require("../utils/SynapseClient");
var IconSvg_1 = (0, tslib_1.__importDefault)(require("./IconSvg"));
var SynapseContext_1 = require("../utils/SynapseContext");
var ToastMessage_1 = require("./ToastMessage");
var react_tooltip_1 = (0, tslib_1.__importDefault)(require("react-tooltip"));
var AddToDownloadListV2 = function (props) {
var entityId = props.entityId, entityVersionNumber = props.entityVersionNumber;
var accessToken = (0, SynapseContext_1.useSynapseContext)().accessToken;
if (!accessToken) {
return react_1.default.createElement(react_1.default.Fragment, null);
}
var addToDownloadListV2 = function () { return (0, tslib_1.__awaiter)(void 0, void 0, void 0, function () {
var entity, e_1;
return (0, tslib_1.__generator)(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 3, , 4]);
return [4 /*yield*/, (0, SynapseClient_1.addFileToDownloadListV2)(entityId, entityVersionNumber, accessToken)];
case 1:
_a.sent();
return [4 /*yield*/, (0, SynapseClient_1.getEntity)(accessToken, entityId, entityVersionNumber ? entityVersionNumber === null || entityVersionNumber === void 0 ? void 0 : entityVersionNumber.toString() : undefined)];
case 2:
entity = _a.sent();
(0, ToastMessage_1.displayToast)(entity.name + " was successfully added to your Download Cart.", 'success');
return [3 /*break*/, 4];
case 3:
e_1 = _a.sent();
(0, ToastMessage_1.displayToast)("Unable to add the file to your Download Cart. " + e_1, 'danger');
return [3 /*break*/, 4];
case 4: return [2 /*return*/];
}
});
}); };
return (react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement("a", { "data-tip": "Add this file to your Download Cart", "data-for": entityId + "_" + entityVersionNumber + "_download-list-v2-button", onClick: addToDownloadListV2, className: "ignoreLink" },
react_1.default.createElement(react_tooltip_1.default, { delayShow: 300, place: "right", type: "dark", effect: "solid", id: entityId + "_" + entityVersionNumber + "_download-list-v2-button" }),
react_1.default.createElement(IconSvg_1.default, { options: { icon: 'addToCart' } }))));
};
exports.default = AddToDownloadListV2;
//# sourceMappingURL=AddToDownloadListV2.js.map