diff --git a/src/components/CodeEditor/rowy.d.ts b/src/components/CodeEditor/rowy.d.ts index 86d7b144..f6852cce 100644 --- a/src/components/CodeEditor/rowy.d.ts +++ b/src/components/CodeEditor/rowy.d.ts @@ -48,7 +48,10 @@ interface Rowy { /** * Get an existing secret from the secret manager. */ - get: (name: SecretNames, version?: string) => Promise; + get: ( + name: SecretNames, + version?: string + ) => Promise; }; /** * Gives access to the Cloud Storage. diff --git a/src/components/fields/Connector/Select/PopupContents.tsx b/src/components/fields/Connector/Select/PopupContents.tsx index 34911c6a..1d4c79d5 100644 --- a/src/components/fields/Connector/Select/PopupContents.tsx +++ b/src/components/fields/Connector/Select/PopupContents.tsx @@ -19,15 +19,16 @@ import { } from "@mui/material"; import SearchIcon from "@mui/icons-material/Search"; -import { IConnectServiceSelectProps } from "."; +import { IConnectorSelectProps } from "."; import useStyles from "./styles"; import Loading from "@src/components/Loading"; import { useProjectContext } from "@src/contexts/ProjectContext"; import { replacer } from "@src/utils/fns"; import { getLabel } from "../utils"; +import { useSnackbar } from "notistack"; export interface IPopupContentsProps - extends Omit {} + extends Omit {} // TODO: Implement infinite scroll here export default function PopupContents({ @@ -37,6 +38,8 @@ export default function PopupContents({ docRef, }: IPopupContentsProps) { const { rowyRun, tableState } = useProjectContext(); + + const { enqueueSnackbar } = useSnackbar(); // const url = config.url ; const { config } = column; const elementId = config.elementId; @@ -48,16 +51,28 @@ export default function PopupContents({ const [query, setQuery] = useState(""); // Webservice response const [response, setResponse] = useState(null); + const [hits, setHits] = useState([]); - const hits: any["hits"] = response; + useEffect(() => { + console.log(response); + if (response?.success === false) { + enqueueSnackbar(response.message, { variant: "error" }); + } else if (Array.isArray(response?.hits)) { + setHits(response.hits); + } else { + setHits([]); + //enqueueSnackbar("response is not any array", { variant: "error" }); + } + }, [response]); const [search] = useDebouncedCallback( async (query: string) => { const resp = await rowyRun!({ - route: { method: "POST", path: "/connect" }, + route: { method: "POST", path: "/connector" }, body: { columnKey: column.key, query: query, schemaDocPath: tableState?.config.tableConfig.path, + rowDocPath: docRef.path, }, }); setResponse(resp); diff --git a/src/components/fields/Connector/Select/index.tsx b/src/components/fields/Connector/Select/index.tsx index 9356737a..7508b7cf 100644 --- a/src/components/fields/Connector/Select/index.tsx +++ b/src/components/fields/Connector/Select/index.tsx @@ -13,7 +13,7 @@ export type ServiceValue = { [prop: string]: any; }; -export interface IConnectServiceSelectProps { +export interface IConnectorSelectProps { value: ServiceValue[]; onChange: (value: ServiceValue[]) => void; column: any; @@ -26,13 +26,13 @@ export interface IConnectServiceSelectProps { disabled?: boolean; } -export default function ConnectServiceSelect({ +export default function ConnectorSelect({ value = [], className, TextFieldProps = {}, disabled, ...props -}: IConnectServiceSelectProps) { +}: IConnectorSelectProps) { const classes = useStyles(); const sanitisedValue = Array.isArray(value) ? value : []; diff --git a/src/components/fields/Connector/Settings.tsx b/src/components/fields/Connector/Settings.tsx index c30016bb..023438a6 100644 --- a/src/components/fields/Connector/Settings.tsx +++ b/src/components/fields/Connector/Settings.tsx @@ -66,14 +66,14 @@ export default function Settings({ config, onChange }) { steps={[ { id: "function", - title: "Connect Function", + title: "Connector Function", content: ( }>