synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
121 lines (120 loc) • 4.18 kB
JavaScript
import { jsx as o } from "react/jsx-runtime";
import { Search as c } from "../../assets/themed_icons/Search.js";
import "@mui/material/SvgIcon";
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 { BUNDLE_MASK_QUERY_RESULTS as f } 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 h } from "react";
import "../../utils/context/SynapseContext.js";
import "use-deep-compare-effect";
import { styled as y, Popper as S, useTheme as R, FormControl as b, Autocomplete as g, TextField as q, InputAdornment as C, Box as I } 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 { useGetQueryResultBundleWithAsyncStatus as A } from "../../synapse-queries/entity/useGetQueryResultBundle.js";
const i = "0px 4px 4px 0px rgba(0, 0, 0, 0.05), 0px 1px 1px 0px rgba(0, 0, 0, 0.05)", B = y(S)(() => ({
"& .MuiAutocomplete-paper": {
borderRadius: "0px 0px 40px 40px",
p: "0px 20px 20px 20px",
boxShadow: i
}
})), P = (t) => /* @__PURE__ */ o(
B,
{
...t,
placement: "bottom",
modifiers: [{ name: "flip", enabled: !1 }]
}
);
function ae({
sourceTable: t,
gotoPlace: n
}) {
const [m, p] = h(!1), a = R(), l = {
partMask: f,
concreteType: "org.sagebionetworks.repo.model.table.QueryBundleRequest",
entityId: t,
query: {
sql: `SELECT * FROM ${t}`,
limit: 10
}
}, { data: d, isLoading: u } = A(l), r = d?.responseBody?.queryResult?.queryResults, x = r?.headers?.findIndex(
(e) => e.name == "top_searched"
);
return /* @__PURE__ */ o(b, { fullWidth: !0, sx: { m: 1 }, children: /* @__PURE__ */ o(
g,
{
freeSolo: !0,
disableClearable: !0,
filterOptions: (e) => e,
options: r && !u ? r.rows.map((e) => e.values[x] ?? "") : ["..."],
onChange: (e, s) => {
s && n(`/SearchV2:default?query=${encodeURIComponent(s)}`);
},
slots: {
popper: P
},
onOpen: () => p(!0),
onClose: () => p(!1),
groupBy: () => "Most popular searches",
renderInput: (e) => /* @__PURE__ */ o(
q,
{
...e,
variant: "outlined",
placeholder: "Search Synapse",
slotProps: {
input: {
sx: {
fontSize: "24px",
borderRadius: m ? "40px 40px 0px 0px" : "40px",
backgroundColor: "white",
boxShadow: i
},
startAdornment: /* @__PURE__ */ o(C, { position: "start", children: /* @__PURE__ */ o(
I,
{
sx: {
ml: "15px",
display: "flex",
alignItems: "center"
},
children: /* @__PURE__ */ o(
c,
{
size: 32,
fill: a.palette.secondary[600]
}
)
}
) })
}
}
}
)
}
) });
}
export {
ae as SynapseHomepageSearch
};
//# sourceMappingURL=SynapseHomepageSearch.js.map