UNPKG

synapse-react-client

Version:

[![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synapse-react-client) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettie

112 lines (111 loc) 3.77 kB
import { jsxs as T, Fragment as y, jsx as e } from "react/jsx-runtime"; import * as C 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 "@sage-bionetworks/synapse-types"; import { EntityTypeGroup as b } from "../../utils/functions/EntityTypeUtils.js"; import "../../utils/SynapseConstants.js"; import "lodash-es"; import "@sage-bionetworks/synapse-client/util/synapseClientFetch"; import "../../utils/PermissionLevelToAccessType.js"; import { useState as S, useCallback as l } from "react"; import { useSynapseContext as E } from "../../utils/context/SynapseContext.js"; import "use-deep-compare-effect"; import "@tanstack/react-query"; import "@tanstack/query-core"; import "lodash-es/isEmpty"; import "lodash-es/isEqual"; import "lodash-es/xorWith"; import { Button as h } from "@mui/material"; import { EntityType as w } from "@sage-bionetworks/synapse-client"; import "../../utils/types/IsType.js"; 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 "react-router"; import { DownloadTwoTone as g } from "@mui/icons-material"; import { EntityFinderModal as B } from "../EntityFinder/EntityFinderModal.js"; import { FinderScope as a } from "../EntityFinder/tree/EntityTree.js"; import { VersionSelectionType as F } from "../EntityFinder/VersionSelectionType.js"; import { displayToast as I } from "../ToastMessage/ToastMessage.js"; function po(c) { const { initialFinderProjectId: n, onAddColumns: m, ...d } = c, [u, r] = S(!1), { accessToken: p } = E(), s = l( async (t) => { const { tableBundle: o } = await C.getEntityBundleV2( t.targetId, { includeTableBundle: !0 }, t.targetVersionNumber, p ); return o.columnModels.map((i) => ({ ...i, id: void 0 })); }, [p] ), f = l( async (t) => { try { const o = t[0]; if (o) { const i = await s(o); m(i); } } catch (o) { console.error(o), I(o.message, "danger"); } finally { r(!1); } }, [s, m] ); return /* @__PURE__ */ T(y, { children: [ /* @__PURE__ */ e( B, { configuration: { initialScope: n ? a.CURRENT_PROJECT : a.ALL_PROJECTS, initialContainer: n ?? "root", selectMultiple: !1, selectableTypes: b.ALL_TABLES, visibleTypesInTree: [w.project], versionSelection: F.UNTRACKED }, show: u, title: "Import Columns from Table", promptCopy: "Find Tables to import columns", titleHelpPopoverProps: { markdownText: "Search or Browse Synapse to find an existing Table in order to import columns into this Table" }, onConfirm: (t) => { f(t); }, confirmButtonCopy: "Import Columns", onCancel: () => { r(!1); } } ), /* @__PURE__ */ e( h, { variant: "outlined", onClick: () => { r(!0); }, startIcon: /* @__PURE__ */ e(g, {}), ...d, children: "Import Columns" } ) ] }); } export { po as default }; //# sourceMappingURL=ImportTableColumnsButton.js.map