synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
98 lines (97 loc) • 3.54 kB
JavaScript
import { jsx as o, jsxs as s, Fragment as m } from "react/jsx-runtime";
import "../../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 { FeatureFlagEnum as g } from "@sage-bionetworks/synapse-types";
import "../../utils/functions/EntityTypeUtils.js";
import { DOWNLOAD_PERMISSION_REQUIRED as h } from "../../utils/SynapseConstants.js";
import "lodash-es";
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
import "@tanstack/react-query";
import "../../utils/PermissionLevelToAccessType.js";
import { useState as S } from "react";
import "../../utils/context/SynapseContext.js";
import "use-deep-compare-effect";
import { Alert as f, Typography as w, Button as y } from "@mui/material";
import "../../utils/hooks/useCookiePreferences.js";
import "../../utils/hooks/useSourceAppConfigs.js";
import "universal-cookie";
import "../../utils/AppUtils/session/ApplicationSessionContext.js";
import "../../utils/context/FullContextProvider.js";
import "../../utils/context/DocumentMetadataContext.js";
import '../../style/components/_spinner.css';/* empty css */
import "@tanstack/query-core";
import "lodash-es/isEmpty";
import "lodash-es/isEqual";
import "lodash-es/xorWith";
import "react-router";
import "@sage-bionetworks/synapse-client";
import "../../utils/types/IsType.js";
import T from "../../synapse-queries/entity/useEntityBundle.js";
import { useGetFeatureFlag as _ } from "../../synapse-queries/featureflags/useGetFeatureFlag.js";
import C from "../EntityAclEditor/EntityAclEditorModal.js";
import { ActionRequiredCard as D } from "./ActionRequiredCard/ActionRequiredCard.js";
const I = ((t) => window.open(
`https://www.synapse.org/Synapse:${t}`,
"_blank"
)), R = "Download Permission Required";
function mo(t) {
const {
entityId: r,
count: p,
onViewSharingSettingsClicked: a = I
} = t, {
data: i,
isLoading: d,
isError: l,
error: c
} = T(r, void 0, {
includeEntity: !0,
includePermissions: !0
}), [u, e] = S(!1), n = !!i?.permissions.canDownload, E = _(
g.REACT_ENTITY_ACL_EDITOR
);
return l ? /* @__PURE__ */ o(f, { severity: "error", children: c.reason }) : /* @__PURE__ */ o(
D,
{
isLoading: d,
title: R,
description: /* @__PURE__ */ s(m, { children: [
"You must be granted the download permission on",
" ",
/* @__PURE__ */ o("strong", { children: i?.entity.name }),
" in order to download this set of files."
] }),
iconType: h,
count: p,
actionNode: /* @__PURE__ */ s(m, { children: [
/* @__PURE__ */ o(w, { variant: "smallText1", sx: { mb: 1, color: "grey.700" }, children: "Contact an administrator to request download permission" }),
/* @__PURE__ */ o(
C,
{
entityId: r,
open: u,
onClose: () => e(!1)
}
),
/* @__PURE__ */ o(
y,
{
variant: "outlined",
onClick: () => {
E ? e(!0) : a(r);
},
disabled: n,
children: n ? "Complete" : "View Sharing Settings"
}
)
] })
}
);
}
export {
R as REQUEST_DOWNLOAD_TITLE,
mo as RequestDownloadCard
};
//# sourceMappingURL=RequestDownloadCard.js.map