synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
107 lines (106 loc) • 4.28 kB
JavaScript
import { jsx as o, jsxs as i } 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 "@sage-bionetworks/synapse-types";
import "../../../utils/functions/EntityTypeUtils.js";
import { SYNAPSE_DOCS_SHARING_SETTINGS_PERMISSIONS_CONDITIONS_FOR_USE_URL as S } 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 b } from "react";
import "../../../utils/context/SynapseContext.js";
import "use-deep-compare-effect";
import { FormControl as C, FormLabel as I, RadioGroup as A, FormControlLabel as s, Radio as a, Typography as _ } 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 { useCreateLockAccessRequirement as v } from "../../../synapse-queries/dataaccess/useAccessRequirements.js";
import { ConfirmationDialog as N } from "../../ConfirmationDialog/ConfirmationDialog.js";
import R from "../../FullWidthAlert/FullWidthAlert.js";
import { displayToast as l } from "../../ToastMessage/ToastMessage.js";
function so(m) {
const p = /* @__PURE__ */ i(_, { variant: "smallText1", children: [
"Sage Bionetworks does not typically impose conditions for use on non-human data unless there is a legal, ethical or regulatory reason to do so. If you want to add conditions for use to this content, please contact the Synapse Access and Compliance Team (ACT) to discuss at",
" ",
/* @__PURE__ */ o("a", { href: "mailto:act@sagebase.org", children: "act@sagebase.org" }),
"."
] }), { entityId: c, open: d, onClose: e } = m, [t, u] = b(null), {
mutate: f,
isPending: n
} = v({
onSuccess: () => {
l("Successfully imposed restriction", "success"), window.open(
"https://sagebionetworks.jira.com/servicedesk/customer/portal/8/group/15/create/134",
"_blank"
), e();
},
onError: (r) => {
l(`Failed to impose restriction: ${r.reason}`, "danger");
}
});
function h() {
t ? f(c) : e();
}
function g(r) {
u(r.target.value === "true");
}
return /* @__PURE__ */ o(
N,
{
title: "Conditions for Use",
onConfirm: () => h(),
titleHelpPopoverProps: {
markdownText: "Conditions for use describes data use requirements that must be fulfilled before downloading.",
helpUrl: S
},
confirmButtonProps: {
disabled: t == null || n
},
cancelButtonProps: {
disabled: n
},
onCancel: () => e(),
open: d,
content: /* @__PURE__ */ i(C, { sx: { width: "100%" }, children: [
/* @__PURE__ */ o(I, { id: "demo-radio-buttons-group-label", children: "Is this sensitive human data that must be protected?" }),
/* @__PURE__ */ i(
A,
{
value: t,
onChange: g,
children: [
/* @__PURE__ */ o(s, { control: /* @__PURE__ */ o(a, {}), label: "Yes", value: !0 }),
/* @__PURE__ */ o(s, { control: /* @__PURE__ */ o(a, {}), label: "No", value: !1 })
]
}
),
t === !1 && /* @__PURE__ */ o(
R,
{
variant: "warning",
isGlobal: !1,
description: p
}
)
] })
}
);
}
export {
so as default
};
//# sourceMappingURL=ImposeRestrictionDialog.js.map