UNPKG

@kit-data-manager/react-search-component

Version:

All-in-one component for rendering an elastic search UI for searching anything. Built-in support for visualizing related items in a graph and resolving unique identifiers.

23 lines 2.06 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { ReactSearchComponentContext } from "../../components/ReactSearchComponentContext"; import { RelationsGraph } from "../../components/graph/RelationsGraph"; import { Dialog, DialogContent, DialogTitle } from "../../components/ui/dialog"; import * as VisuallyHidden from "@radix-ui/react-visually-hidden"; import { useCallback, useContext } from "react"; import { Button } from "../../components/ui/button"; import { X } from "lucide-react"; export function RelationsGraphModal({ isOpen, onOpenChange, nodes, resultView, options, dark, nodeTypes }) { const searchContext = useContext(ReactSearchComponentContext); const localSearchFor = useCallback((query) => { onOpenChange(false); searchContext.searchFor(query); }, [onOpenChange, searchContext]); return (_jsx(Dialog, { open: isOpen, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { className: "rfs-h-[calc(100vh-40px)] rfs-max-w-none !rfs-w-[calc(100vw-40px)] !rfs-p-0", hideCloseButton: true, children: [_jsx(VisuallyHidden.Root, { children: _jsx(DialogTitle, { children: "Relationship graph" }) }), _jsx(ReactSearchComponentContext.Provider, { value: { searchFor: localSearchFor, searchTerm: searchContext.searchTerm, searchForBackground: searchContext.searchForBackground, elasticConnector: searchContext.elasticConnector, config: searchContext.config }, children: _jsx(RelationsGraph, { nodes: nodes, resultView: resultView, options: options, dark: dark, nodeTypes: nodeTypes }) }), _jsx("div", { className: "rfs-absolute rfs-right-4 rfs-top-4", children: _jsxs(Button, { variant: "outline", onClick: () => onOpenChange(false), children: [_jsx(X, { className: "rfs-size-4" }), " Close ", _jsx("span", { className: "rfs-font-mono rfs-text-muted-foreground rfs-ml-2", children: "Esc" })] }) })] }) })); } //# sourceMappingURL=RelationsGraphModal.js.map