@elqnt/kg 1.0.0 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../index.ts","../consts.ts","../hooks/use-knowledge-graph.ts","../hooks/use-knowledge-graph-analytics.ts","../models/kg.ts","../models/kg-designer.ts","../state/knowledge-graph-context.tsx"],"sourcesContent":["export * from \"./consts\";\nexport * from \"./hooks\";\nexport * from \"./models\";\nexport * from \"./state\";\n","export const Test = \"hi\";","\"use client\";\n\nimport { useUserContext } from \"@elqnt/auth\";\nimport { DocsIngestionRequest } from \"@elqnt/docs\";\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useEffect, useState } from \"react\";\nimport {\n KGLabelInfo,\n KGNode,\n KGNodeIngestRequest,\n KGQuery,\n KGQueryResult,\n} from \"../models\";\n\ntype Success = { success: boolean };\n\nexport type UseKnowledgeGraphType = {\n isLoading: boolean;\n ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;\n ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;\n updateNode: (\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ) => Promise<Success | Error>;\n ingestDocs: (\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ) => Promise<Success | Error>;\n\n ingestText: (\n text: string,\n mode: \"entities\" | \"snippets\"\n ) => Promise<Success | Error>;\n\n ingestYT: (url: string) => Promise<Success | Error>;\n\n queryGraph: (query: KGQuery) => Promise<KGQueryResult>;\n getGraphLabels: () => Promise<KGLabelInfo[] | Error>;\n labels: KGLabelInfo[] | undefined;\n selectedLabel: string | undefined;\n setSelectedLabel: (label: string) => void;\n queryResult: KGQueryResult | undefined;\n setQueryResult: (res: KGQueryResult) => void;\n refreshState: () => void;\n selectedNodeId: string | undefined;\n setSelectedNodeId: (id: string | undefined) => void;\n getNodeById: (id: string) => Promise<KGNode | Error>;\n};\n\nexport const useKnowledgeGraph = (\n overrideOrgId?: string\n): UseKnowledgeGraphType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n const [selectedNodeId, setSelectedNodeId] = useState<string | undefined>(\n undefined\n );\n\n const orgId = overrideOrgId ?? selectedOrgId;\n\n const [labels, setLabels] = useState<KGLabelInfo[] | undefined>(undefined);\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>(\n undefined\n );\n const [queryResult, setQueryResult] = useState<KGQueryResult | undefined>(\n undefined\n );\n\n const [stateTrigger, setStateTrigger] = useState(0);\n\n async function ingestNode(\n node: KGNodeIngestRequest\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest, Success>(\n \"kg.ingest.node\",\n node,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestNodes(\n nodes: KGNodeIngestRequest[]\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest[], Success>(\n \"kg.ingest.nodes\",\n nodes,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function updateNode(\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ): Promise<Success | Error> {\n const nodeRequest: KGNodeIngestRequest = {\n label,\n keyField: \"id\",\n fields: {\n ...fields,\n id: nodeId,\n },\n duplicatePolicy: \"replace\",\n };\n\n const result = await ingestNode(nodeRequest);\n\n // Optimize graph after successful update (non-blocking, with delay)\n if (!(result instanceof Error)) {\n // Wait 2 seconds to ensure node is fully written to ClickHouse\n setTimeout(() => {\n optimizeGraph().catch(err =>\n console.error(\"Failed to optimize graph after node update:\", err)\n );\n }, 2000);\n }\n\n return result;\n }\n\n async function optimizeGraph(): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<{}, Success>(\n \"kg.graph.optimize\",\n {},\n {\n orgId,\n }\n );\n\n if (data instanceof Error) {\n console.error(\"Graph optimization failed:\", data);\n return data;\n }\n\n console.log(\"Graph optimized successfully\");\n return data;\n }\n\n async function ingestDocs(\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ): Promise<Success | Error> {\n // todo: implement\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<DocsIngestionRequest, Success>(\n \"docs.kg.ingest\",\n { urls, mode, brief, labels },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestText(\n text: string,\n mode: \"entities\" | \"snippets\"\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestText\",\n { text, mode },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestYT(url: string): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestYT\",\n { url },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function queryGraph(query: KGQuery): Promise<KGQueryResult> {\n if (!orgId) {\n throw new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n throw new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n\n const data = await request<KGQuery, KGQueryResult>(\n \"kg.query.graph\",\n query,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getNodeById(id: string): Promise<KGNode | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<any, KGNode>(\n \"kg.query.nodeById\",\n { id },\n { orgId }\n );\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getGraphLabels(): Promise<KGLabelInfo[] | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n // console.log(\"getGraphLabels\", { orgId });\n\n setIsLoading(true);\n\n const data = await request<any, KGLabelInfo[]>(\n \"kg.graph.labels\",\n {},\n { orgId }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n // todo: global error\n if (!Array.isArray(data) && typeof data === \"object\") {\n const err = data as any;\n return new Error(err?.message ?? err?.error ?? err);\n }\n\n return data;\n }\n\n useEffect(() => {\n if (!natsConnected || !orgId) {\n return;\n }\n async function getLabels(): Promise<KGLabelInfo[] | Error> {\n const data = await getGraphLabels();\n if (data instanceof Error) {\n // console.error(data);\n return [];\n }\n setLabels(data);\n return data;\n }\n getLabels();\n }, [natsConnected, orgId, stateTrigger]);\n\n useEffect(() => {\n if (!natsConnected || !orgId || !selectedLabel) {\n return;\n }\n async function getGraphQueryResult() {\n if (!selectedLabel) return;\n\n console.log(\"will getGraphQueryResult\", { orgId, selectedLabel });\n\n const query: KGQuery = {\n label: selectedLabel,\n fields: [],\n limit: 5_00,\n sortBy: \"\",\n sortOrder: \"asc\",\n // edges: [{ label: \"student of\", direction: \"outgoing\" }],\n depth: 2,\n };\n\n const res = await queryGraph(query);\n\n if (res instanceof Error) {\n console.error(res);\n return;\n }\n setQueryResult(res);\n console.log(\"graph query response \", {\n nodesCount: res.nodes?.length,\n edgesCount: res.edges?.length,\n });\n }\n getGraphQueryResult();\n }, [natsConnected, orgId, selectedLabel, stateTrigger]);\n\n function refreshState() {\n setStateTrigger(stateTrigger + 1);\n }\n\n return {\n isLoading,\n ingestNode,\n ingestNodes,\n updateNode,\n queryGraph,\n getNodeById,\n getGraphLabels,\n labels,\n selectedLabel,\n setSelectedLabel,\n queryResult,\n setQueryResult,\n refreshState,\n ingestDocs,\n ingestText,\n selectedNodeId,\n setSelectedNodeId,\n ingestYT,\n };\n};\n","\"use client\";\n\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useUserContext } from \"@elqnt/auth\";\nimport { useState } from \"react\";\nexport type UseKnowledgeGraphAnalyticsType = {\n isLoading: boolean;\n};\n\nexport const useKnowledgeGraphAnalytics = (\n overrideOrgId?: string\n): UseKnowledgeGraphAnalyticsType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n\n return {\n isLoading,\n };\n};\n","// Code generated by tygo. DO NOT EDIT.\nimport { ResponseMetadata } from \"@elqnt/types\";\n\n//////////\n// source: kg-models.go\n\nexport interface KGNode {\n id: string;\n label: string;\n fields: { [key: string]: any};\n relationships?: KGEdge[];\n score?: number /* float64 */;\n}\nexport interface KGEdge {\n id: string;\n label: string;\n fields: { [key: string]: any};\n from: string;\n to: string;\n}\nexport interface KGNodeIngestRequest {\n label: string;\n keyField?: string;\n reverseEdgeLabel?: string;\n fields: { [key: string]: any};\n edges?: KGEdgeIngestRequest[];\n duplicatePolicy?: DuplicatePolicy;\n generateEmbeddings?: boolean;\n embeddingsSource?: string;\n embeddingsFields?: string[];\n}\nexport type DuplicatePolicy = string;\nexport const DuplicatePolicyCreateIf: DuplicatePolicy = \"createIfNotExist\";\nexport const DuplicatePolicyIgnore: DuplicatePolicy = \"ignore\";\nexport const DuplicatePolicyReplace: DuplicatePolicy = \"replace\";\nexport const DuplicatePolicyFail: DuplicatePolicy = \"fail\";\nexport const DuplicatePolicyCreate: DuplicatePolicy = \"create\";\nexport interface KGEdgeIngestRequest {\n label: string;\n fields: { [key: string]: any};\n toLabel: string;\n toFieldKey: string;\n toFieldValue: any;\n createReciprocal: boolean;\n reciprocalLabel: string;\n allowEmbeddingsSearch?: boolean;\n}\nexport interface KGQuery {\n label: string;\n fields: KGFieldQuery[];\n limit: number /* int */;\n depth: number /* int */;\n sortBy: string;\n sortOrder: string;\n edges?: KGEdgeQuery[];\n embeddingsSource?: string;\n skipEmbedding?: boolean;\n}\nexport interface KGFieldQuery {\n name: string;\n value: any;\n operator: KGFieldQueryOperator;\n}\nexport type KGFieldQueryOperator = string;\nexport const KGFieldQueryOperatorEqual: KGFieldQueryOperator = \"eq\";\nexport const KGFieldQueryOperatorNotEqual: KGFieldQueryOperator = \"neq\";\nexport const KGFieldQueryOperatorGreater: KGFieldQueryOperator = \"gt\";\nexport const KGFieldQueryOperatorLess: KGFieldQueryOperator = \"lt\";\nexport const KGFieldQueryOperatorGreaterOrEqual: KGFieldQueryOperator = \"gte\";\nexport const KGFieldQueryOperatorLessOrEqual: KGFieldQueryOperator = \"lte\";\nexport const KGFieldQueryOperatorLike: KGFieldQueryOperator = \"like\";\nexport const KGFieldQueryOperatorSimilar: KGFieldQueryOperator = \"similar\";\n/**\n * KGFieldQueryOperatorGreaterOrEqual KGFieldQueryOperator = \"gte\"\n * KGFieldQueryOperatorLessOrEqual KGFieldQueryOperator = \"lte\"\n */\nexport const KGFieldQueryOperatorIn: KGFieldQueryOperator = \"in\";\nexport const KGFieldQueryOperatorArrayContains: KGFieldQueryOperator = \"arrayContains\";\nexport type KGRelationshipDirection = string;\nexport const KGRelationshipDirectionIncoming: KGRelationshipDirection = \"incoming\";\nexport const KGRelationshipDirectionOutgoing: KGRelationshipDirection = \"outgoing\";\nexport interface KGEdgeQuery {\n label: string;\n direction: 'incoming' | 'outgoing';\n fields?: { [key: string]: any};\n /**\n * FromLabel string `json:\"fromLabel\"`\n * FromFieldKey string `json:\"fromFieldKey\"`\n * FromValue interface{} `json:\"fromValue\"`\n */\n toLabel: string;\n toFieldKey: string;\n toFieldValue: any;\n}\nexport interface KGQueryResult {\n nodes: KGNode[];\n edges: KGEdge[];\n}\nexport interface KGLabelInfo {\n label: string;\n count: number /* uint64 */;\n}\nexport interface KGPropertyInfo {\n property: string;\n count: number /* uint64 */;\n}\nexport interface KGPLabelSchema {\n label: string;\n keys: string[];\n}\nexport interface KGArticle {\n id: string;\n title: string;\n content: string;\n lang?: string;\n docUrl?: string;\n paragraphs?: string;\n}\nexport interface KGPropertyFilter {\n property: string;\n value: string;\n}\nexport interface KGPropertyFilterRequest {\n label: string;\n filters: KGPropertyFilter[];\n}\nexport interface DeleteDocumentRequest {\n documentId: string;\n}\nexport interface DeleteDocumentResponse {\n success: boolean;\n deletedNodes: { [key: string]: number /* int */};\n totalDeleted: number /* int */;\n error?: string;\n}\n/**\n * KGSyncJob represents a sync job record in the database\n */\nexport interface KGSyncJob {\n id: string;\n title: string;\n stats: { [key: string]: any};\n startTime: string;\n endTime: string;\n updatedAt?: string;\n}\n/**\n * KGSyncJobUpdateRequest is used to insert or update a sync job\n */\nexport interface KGSyncJobUpdateRequest {\n id: string;\n title: string;\n stats: { [key: string]: any};\n startTime: string;\n endTime: string;\n}\nexport interface KGSyncJobUpdateResponse {\n jobId: string;\n metadata: ResponseMetadata;\n}\nexport interface KGSyncJobListResponse {\n jobs: KGSyncJob[];\n metadata: ResponseMetadata;\n}\n/**\n * KGSyncJobListRequest is used to list sync jobs with filters\n */\nexport interface KGSyncJobListRequest {\n limit?: number /* int */;\n offset?: number /* int */;\n startFrom?: string;\n endTo?: string;\n}\n","// Code generated by tygo. DO NOT EDIT.\n\n//////////\n// source: designer-models.go\n\n/**\n * GraphNodeDefinition represents a node type in the knowledge graph\n */\nexport interface GraphNodeDefinition {\n label: string;\n description: string;\n schema: { [key: string]: any};\n createdAt: string /* RFC3339 */;\n updatedAt: string /* RFC3339 */;\n}\n/**\n * GraphEdgeDefinition represents an edge type in the knowledge graph\n */\nexport interface GraphEdgeDefinition {\n label: string;\n description: string;\n fromNode: string;\n toNode: string;\n schema: { [key: string]: any};\n createdAt: string /* RFC3339 */;\n updatedAt: string /* RFC3339 */;\n}\n/**\n * Request/Response types\n */\nexport interface GraphNodeRequest {\n node: GraphNodeDefinition;\n}\nexport interface GraphNodeResponse {\n node?: GraphNodeDefinition;\n nodes?: GraphNodeDefinition[];\n success: boolean;\n error?: string;\n}\nexport interface GraphEdgeRequest {\n edge: GraphEdgeDefinition;\n}\nexport interface GraphEdgeResponse {\n edge?: GraphEdgeDefinition;\n edges?: GraphEdgeDefinition[];\n success: boolean;\n error?: string;\n}\n\n//////////\n// source: subjects.go\n\n/**\n * KG Designer Node subjects\n */\nexport const KGDesignerNodeCreate = \"kg.designer.node.create\";\nexport const KGDesignerNodeUpdate = \"kg.designer.node.update.*\";\nexport const KGDesignerNodeDelete = \"kg.designer.node.delete.*\";\nexport const KGDesignerNodeGet = \"kg.designer.node.get.*\";\nexport const KGDesignerNodeList = \"kg.designer.node.list\";\n/**\n * KG Designer Edge subjects\n */\nexport const KGDesignerEdgeCreate = \"kg.designer.edge.create\";\nexport const KGDesignerEdgeUpdate = \"kg.designer.edge.update.*\";\nexport const KGDesignerEdgeDelete = \"kg.designer.edge.delete.*\";\nexport const KGDesignerEdgeGet = \"kg.designer.edge.get.*\";\nexport const KGDesignerEdgeList = \"kg.designer.edge.list\";\n/**\n * KG Database subjects\n */\nexport const KGDBCreate = \"kg.db.create\";\n/**\n * KG Document subjects\n */\nexport const KGDocumentDelete = \"kg_ingest.document.delete\";\n/**\n * KG Sync Job subjects\n */\nexport const KGSyncJobUpdate = \"kg.sync.job.update\";\nexport const KGSyncJobList = \"kg.sync.job.list\";\n/**\n * KG Optimization subjects\n */\nexport const KGGraphOptimize = \"kg.graph.optimize\";\n","\"use client\";\n\nimport { ReactNode, createContext, useContext } from \"react\";\nimport {\n UseKnowledgeGraphType,\n useKnowledgeGraph,\n} from \"../hooks/use-knowledge-graph\";\n\nexport const KnowledgeGraphContext = createContext<\n UseKnowledgeGraphType | undefined\n>(undefined);\n\nexport function KnowledgeGraphContextProvider(props: {\n children: ReactNode;\n overrideOrgId?: string;\n}) {\n const { children, overrideOrgId } = props;\n\n const useKG = useKnowledgeGraph(overrideOrgId);\n\n return (\n <KnowledgeGraphContext.Provider value={useKG}>\n {children}\n </KnowledgeGraphContext.Provider>\n );\n}\n\nexport const useKnowledgeGraphContext = () => {\n const context = useContext(KnowledgeGraphContext);\n if (context === undefined) {\n throw new Error(\n \"useKnowledgeGraphContext must be used within a KnowledgeGraphContextProvider\"\n );\n }\n return context;\n};\n"],"mappings":"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","names":["labels","import_nats","import_auth","import_react","import_react"]}
1
+ {"version":3,"sources":["/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/index.js","../consts.ts","../hooks/use-knowledge-graph.ts","../hooks/use-knowledge-graph-analytics.ts","../state/knowledge-graph-context.tsx"],"names":["labels","useUserContext","useState","useNatsContext"],"mappings":"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","file":"/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/index.js","sourcesContent":[null,"export const Test = \"hi\";","\"use client\";\n\nimport { useUserContext } from \"@elqnt/auth\";\nimport { DocsIngestionRequest } from \"@elqnt/docs\";\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useEffect, useState } from \"react\";\nimport {\n KGLabelInfo,\n KGNode,\n KGNodeIngestRequest,\n KGQuery,\n KGQueryResult,\n} from \"../models\";\n\ntype Success = { success: boolean };\n\nexport type UseKnowledgeGraphType = {\n isLoading: boolean;\n ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;\n ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;\n updateNode: (\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ) => Promise<Success | Error>;\n ingestDocs: (\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ) => Promise<Success | Error>;\n\n ingestText: (\n text: string,\n mode: \"entities\" | \"snippets\"\n ) => Promise<Success | Error>;\n\n ingestYT: (url: string) => Promise<Success | Error>;\n\n queryGraph: (query: KGQuery) => Promise<KGQueryResult>;\n getGraphLabels: () => Promise<KGLabelInfo[] | Error>;\n labels: KGLabelInfo[] | undefined;\n selectedLabel: string | undefined;\n setSelectedLabel: (label: string) => void;\n queryResult: KGQueryResult | undefined;\n setQueryResult: (res: KGQueryResult) => void;\n refreshState: () => void;\n selectedNodeId: string | undefined;\n setSelectedNodeId: (id: string | undefined) => void;\n getNodeById: (id: string) => Promise<KGNode | Error>;\n};\n\nexport const useKnowledgeGraph = (\n overrideOrgId?: string\n): UseKnowledgeGraphType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n const [selectedNodeId, setSelectedNodeId] = useState<string | undefined>(\n undefined\n );\n\n const orgId = overrideOrgId ?? selectedOrgId;\n\n const [labels, setLabels] = useState<KGLabelInfo[] | undefined>(undefined);\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>(\n undefined\n );\n const [queryResult, setQueryResult] = useState<KGQueryResult | undefined>(\n undefined\n );\n\n const [stateTrigger, setStateTrigger] = useState(0);\n\n async function ingestNode(\n node: KGNodeIngestRequest\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest, Success>(\n \"kg.ingest.node\",\n node,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestNodes(\n nodes: KGNodeIngestRequest[]\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest[], Success>(\n \"kg.ingest.nodes\",\n nodes,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function updateNode(\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ): Promise<Success | Error> {\n const nodeRequest: KGNodeIngestRequest = {\n label,\n keyField: \"id\",\n fields: {\n ...fields,\n id: nodeId,\n },\n duplicatePolicy: \"replace\",\n };\n\n const result = await ingestNode(nodeRequest);\n\n // Optimize graph after successful update (non-blocking, with delay)\n if (!(result instanceof Error)) {\n // Wait 2 seconds to ensure node is fully written to ClickHouse\n setTimeout(() => {\n optimizeGraph().catch(err =>\n console.error(\"Failed to optimize graph after node update:\", err)\n );\n }, 2000);\n }\n\n return result;\n }\n\n async function optimizeGraph(): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<{}, Success>(\n \"kg.graph.optimize\",\n {},\n {\n orgId,\n }\n );\n\n if (data instanceof Error) {\n console.error(\"Graph optimization failed:\", data);\n return data;\n }\n\n console.log(\"Graph optimized successfully\");\n return data;\n }\n\n async function ingestDocs(\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ): Promise<Success | Error> {\n // todo: implement\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<DocsIngestionRequest, Success>(\n \"docs.kg.ingest\",\n { urls, mode, brief, labels },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestText(\n text: string,\n mode: \"entities\" | \"snippets\"\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestText\",\n { text, mode },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestYT(url: string): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestYT\",\n { url },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function queryGraph(query: KGQuery): Promise<KGQueryResult> {\n if (!orgId) {\n throw new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n throw new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n\n const data = await request<KGQuery, KGQueryResult>(\n \"kg.query.graph\",\n query,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getNodeById(id: string): Promise<KGNode | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<any, KGNode>(\n \"kg.query.nodeById\",\n { id },\n { orgId }\n );\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getGraphLabels(): Promise<KGLabelInfo[] | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n // console.log(\"getGraphLabels\", { orgId });\n\n setIsLoading(true);\n\n const data = await request<any, KGLabelInfo[]>(\n \"kg.graph.labels\",\n {},\n { orgId }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n // todo: global error\n if (!Array.isArray(data) && typeof data === \"object\") {\n const err = data as any;\n return new Error(err?.message ?? err?.error ?? err);\n }\n\n return data;\n }\n\n useEffect(() => {\n if (!natsConnected || !orgId) {\n return;\n }\n async function getLabels(): Promise<KGLabelInfo[] | Error> {\n const data = await getGraphLabels();\n if (data instanceof Error) {\n // console.error(data);\n return [];\n }\n setLabels(data);\n return data;\n }\n getLabels();\n }, [natsConnected, orgId, stateTrigger]);\n\n useEffect(() => {\n if (!natsConnected || !orgId || !selectedLabel) {\n return;\n }\n async function getGraphQueryResult() {\n if (!selectedLabel) return;\n\n console.log(\"will getGraphQueryResult\", { orgId, selectedLabel });\n\n const query: KGQuery = {\n label: selectedLabel,\n fields: [],\n limit: 5_00,\n sortBy: \"\",\n sortOrder: \"asc\",\n // edges: [{ label: \"student of\", direction: \"outgoing\" }],\n depth: 2,\n };\n\n const res = await queryGraph(query);\n\n if (res instanceof Error) {\n console.error(res);\n return;\n }\n setQueryResult(res);\n console.log(\"graph query response \", {\n nodesCount: res.nodes?.length,\n edgesCount: res.edges?.length,\n });\n }\n getGraphQueryResult();\n }, [natsConnected, orgId, selectedLabel, stateTrigger]);\n\n function refreshState() {\n setStateTrigger(stateTrigger + 1);\n }\n\n return {\n isLoading,\n ingestNode,\n ingestNodes,\n updateNode,\n queryGraph,\n getNodeById,\n getGraphLabels,\n labels,\n selectedLabel,\n setSelectedLabel,\n queryResult,\n setQueryResult,\n refreshState,\n ingestDocs,\n ingestText,\n selectedNodeId,\n setSelectedNodeId,\n ingestYT,\n };\n};\n","\"use client\";\n\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useUserContext } from \"@elqnt/auth\";\nimport { useState } from \"react\";\nexport type UseKnowledgeGraphAnalyticsType = {\n isLoading: boolean;\n};\n\nexport const useKnowledgeGraphAnalytics = (\n overrideOrgId?: string\n): UseKnowledgeGraphAnalyticsType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n\n return {\n isLoading,\n };\n};\n","\"use client\";\n\nimport { ReactNode, createContext, useContext } from \"react\";\nimport {\n UseKnowledgeGraphType,\n useKnowledgeGraph,\n} from \"../hooks/use-knowledge-graph\";\n\nexport const KnowledgeGraphContext = createContext<\n UseKnowledgeGraphType | undefined\n>(undefined);\n\nexport function KnowledgeGraphContextProvider(props: {\n children: ReactNode;\n overrideOrgId?: string;\n}) {\n const { children, overrideOrgId } = props;\n\n const useKG = useKnowledgeGraph(overrideOrgId);\n\n return (\n <KnowledgeGraphContext.Provider value={useKG}>\n {children}\n </KnowledgeGraphContext.Provider>\n );\n}\n\nexport const useKnowledgeGraphContext = () => {\n const context = useContext(KnowledgeGraphContext);\n if (context === undefined) {\n throw new Error(\n \"useKnowledgeGraphContext must be used within a KnowledgeGraphContextProvider\"\n );\n }\n return context;\n};\n"]}
package/dist/index.mjs CHANGED
@@ -1,3 +1,41 @@
1
+ import "./chunk-J3XZF6JO.mjs";
2
+ import {
3
+ KGDBCreate,
4
+ KGDesignerEdgeCreate,
5
+ KGDesignerEdgeDelete,
6
+ KGDesignerEdgeGet,
7
+ KGDesignerEdgeList,
8
+ KGDesignerEdgeUpdate,
9
+ KGDesignerNodeCreate,
10
+ KGDesignerNodeDelete,
11
+ KGDesignerNodeGet,
12
+ KGDesignerNodeList,
13
+ KGDesignerNodeUpdate,
14
+ KGDocumentDelete,
15
+ KGGraphOptimize,
16
+ KGSyncJobList,
17
+ KGSyncJobUpdate
18
+ } from "./chunk-ZKSYF4EB.mjs";
19
+ import {
20
+ DuplicatePolicyCreate,
21
+ DuplicatePolicyCreateIf,
22
+ DuplicatePolicyFail,
23
+ DuplicatePolicyIgnore,
24
+ DuplicatePolicyReplace,
25
+ KGFieldQueryOperatorArrayContains,
26
+ KGFieldQueryOperatorEqual,
27
+ KGFieldQueryOperatorGreater,
28
+ KGFieldQueryOperatorGreaterOrEqual,
29
+ KGFieldQueryOperatorIn,
30
+ KGFieldQueryOperatorLess,
31
+ KGFieldQueryOperatorLessOrEqual,
32
+ KGFieldQueryOperatorLike,
33
+ KGFieldQueryOperatorNotEqual,
34
+ KGFieldQueryOperatorSimilar,
35
+ KGRelationshipDirectionIncoming,
36
+ KGRelationshipDirectionOutgoing
37
+ } from "./chunk-26VARHUJ.mjs";
38
+
1
39
  // consts.ts
2
40
  var Test = "hi";
3
41
 
@@ -317,42 +355,6 @@ var useKnowledgeGraphAnalytics = (overrideOrgId) => {
317
355
  };
318
356
  };
319
357
 
320
- // models/kg.ts
321
- var DuplicatePolicyCreateIf = "createIfNotExist";
322
- var DuplicatePolicyIgnore = "ignore";
323
- var DuplicatePolicyReplace = "replace";
324
- var DuplicatePolicyFail = "fail";
325
- var DuplicatePolicyCreate = "create";
326
- var KGFieldQueryOperatorEqual = "eq";
327
- var KGFieldQueryOperatorNotEqual = "neq";
328
- var KGFieldQueryOperatorGreater = "gt";
329
- var KGFieldQueryOperatorLess = "lt";
330
- var KGFieldQueryOperatorGreaterOrEqual = "gte";
331
- var KGFieldQueryOperatorLessOrEqual = "lte";
332
- var KGFieldQueryOperatorLike = "like";
333
- var KGFieldQueryOperatorSimilar = "similar";
334
- var KGFieldQueryOperatorIn = "in";
335
- var KGFieldQueryOperatorArrayContains = "arrayContains";
336
- var KGRelationshipDirectionIncoming = "incoming";
337
- var KGRelationshipDirectionOutgoing = "outgoing";
338
-
339
- // models/kg-designer.ts
340
- var KGDesignerNodeCreate = "kg.designer.node.create";
341
- var KGDesignerNodeUpdate = "kg.designer.node.update.*";
342
- var KGDesignerNodeDelete = "kg.designer.node.delete.*";
343
- var KGDesignerNodeGet = "kg.designer.node.get.*";
344
- var KGDesignerNodeList = "kg.designer.node.list";
345
- var KGDesignerEdgeCreate = "kg.designer.edge.create";
346
- var KGDesignerEdgeUpdate = "kg.designer.edge.update.*";
347
- var KGDesignerEdgeDelete = "kg.designer.edge.delete.*";
348
- var KGDesignerEdgeGet = "kg.designer.edge.get.*";
349
- var KGDesignerEdgeList = "kg.designer.edge.list";
350
- var KGDBCreate = "kg.db.create";
351
- var KGDocumentDelete = "kg_ingest.document.delete";
352
- var KGSyncJobUpdate = "kg.sync.job.update";
353
- var KGSyncJobList = "kg.sync.job.list";
354
- var KGGraphOptimize = "kg.graph.optimize";
355
-
356
358
  // state/knowledge-graph-context.tsx
357
359
  import { createContext, useContext } from "react";
358
360
  import { jsx } from "react/jsx-runtime";
@@ -1 +1 @@
1
- {"version":3,"sources":["../consts.ts","../hooks/use-knowledge-graph.ts","../hooks/use-knowledge-graph-analytics.ts","../models/kg.ts","../models/kg-designer.ts","../state/knowledge-graph-context.tsx"],"sourcesContent":["export const Test = \"hi\";","\"use client\";\n\nimport { useUserContext } from \"@elqnt/auth\";\nimport { DocsIngestionRequest } from \"@elqnt/docs\";\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useEffect, useState } from \"react\";\nimport {\n KGLabelInfo,\n KGNode,\n KGNodeIngestRequest,\n KGQuery,\n KGQueryResult,\n} from \"../models\";\n\ntype Success = { success: boolean };\n\nexport type UseKnowledgeGraphType = {\n isLoading: boolean;\n ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;\n ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;\n updateNode: (\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ) => Promise<Success | Error>;\n ingestDocs: (\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ) => Promise<Success | Error>;\n\n ingestText: (\n text: string,\n mode: \"entities\" | \"snippets\"\n ) => Promise<Success | Error>;\n\n ingestYT: (url: string) => Promise<Success | Error>;\n\n queryGraph: (query: KGQuery) => Promise<KGQueryResult>;\n getGraphLabels: () => Promise<KGLabelInfo[] | Error>;\n labels: KGLabelInfo[] | undefined;\n selectedLabel: string | undefined;\n setSelectedLabel: (label: string) => void;\n queryResult: KGQueryResult | undefined;\n setQueryResult: (res: KGQueryResult) => void;\n refreshState: () => void;\n selectedNodeId: string | undefined;\n setSelectedNodeId: (id: string | undefined) => void;\n getNodeById: (id: string) => Promise<KGNode | Error>;\n};\n\nexport const useKnowledgeGraph = (\n overrideOrgId?: string\n): UseKnowledgeGraphType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n const [selectedNodeId, setSelectedNodeId] = useState<string | undefined>(\n undefined\n );\n\n const orgId = overrideOrgId ?? selectedOrgId;\n\n const [labels, setLabels] = useState<KGLabelInfo[] | undefined>(undefined);\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>(\n undefined\n );\n const [queryResult, setQueryResult] = useState<KGQueryResult | undefined>(\n undefined\n );\n\n const [stateTrigger, setStateTrigger] = useState(0);\n\n async function ingestNode(\n node: KGNodeIngestRequest\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest, Success>(\n \"kg.ingest.node\",\n node,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestNodes(\n nodes: KGNodeIngestRequest[]\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest[], Success>(\n \"kg.ingest.nodes\",\n nodes,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function updateNode(\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ): Promise<Success | Error> {\n const nodeRequest: KGNodeIngestRequest = {\n label,\n keyField: \"id\",\n fields: {\n ...fields,\n id: nodeId,\n },\n duplicatePolicy: \"replace\",\n };\n\n const result = await ingestNode(nodeRequest);\n\n // Optimize graph after successful update (non-blocking, with delay)\n if (!(result instanceof Error)) {\n // Wait 2 seconds to ensure node is fully written to ClickHouse\n setTimeout(() => {\n optimizeGraph().catch(err =>\n console.error(\"Failed to optimize graph after node update:\", err)\n );\n }, 2000);\n }\n\n return result;\n }\n\n async function optimizeGraph(): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<{}, Success>(\n \"kg.graph.optimize\",\n {},\n {\n orgId,\n }\n );\n\n if (data instanceof Error) {\n console.error(\"Graph optimization failed:\", data);\n return data;\n }\n\n console.log(\"Graph optimized successfully\");\n return data;\n }\n\n async function ingestDocs(\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ): Promise<Success | Error> {\n // todo: implement\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<DocsIngestionRequest, Success>(\n \"docs.kg.ingest\",\n { urls, mode, brief, labels },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestText(\n text: string,\n mode: \"entities\" | \"snippets\"\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestText\",\n { text, mode },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestYT(url: string): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestYT\",\n { url },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function queryGraph(query: KGQuery): Promise<KGQueryResult> {\n if (!orgId) {\n throw new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n throw new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n\n const data = await request<KGQuery, KGQueryResult>(\n \"kg.query.graph\",\n query,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getNodeById(id: string): Promise<KGNode | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<any, KGNode>(\n \"kg.query.nodeById\",\n { id },\n { orgId }\n );\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getGraphLabels(): Promise<KGLabelInfo[] | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n // console.log(\"getGraphLabels\", { orgId });\n\n setIsLoading(true);\n\n const data = await request<any, KGLabelInfo[]>(\n \"kg.graph.labels\",\n {},\n { orgId }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n // todo: global error\n if (!Array.isArray(data) && typeof data === \"object\") {\n const err = data as any;\n return new Error(err?.message ?? err?.error ?? err);\n }\n\n return data;\n }\n\n useEffect(() => {\n if (!natsConnected || !orgId) {\n return;\n }\n async function getLabels(): Promise<KGLabelInfo[] | Error> {\n const data = await getGraphLabels();\n if (data instanceof Error) {\n // console.error(data);\n return [];\n }\n setLabels(data);\n return data;\n }\n getLabels();\n }, [natsConnected, orgId, stateTrigger]);\n\n useEffect(() => {\n if (!natsConnected || !orgId || !selectedLabel) {\n return;\n }\n async function getGraphQueryResult() {\n if (!selectedLabel) return;\n\n console.log(\"will getGraphQueryResult\", { orgId, selectedLabel });\n\n const query: KGQuery = {\n label: selectedLabel,\n fields: [],\n limit: 5_00,\n sortBy: \"\",\n sortOrder: \"asc\",\n // edges: [{ label: \"student of\", direction: \"outgoing\" }],\n depth: 2,\n };\n\n const res = await queryGraph(query);\n\n if (res instanceof Error) {\n console.error(res);\n return;\n }\n setQueryResult(res);\n console.log(\"graph query response \", {\n nodesCount: res.nodes?.length,\n edgesCount: res.edges?.length,\n });\n }\n getGraphQueryResult();\n }, [natsConnected, orgId, selectedLabel, stateTrigger]);\n\n function refreshState() {\n setStateTrigger(stateTrigger + 1);\n }\n\n return {\n isLoading,\n ingestNode,\n ingestNodes,\n updateNode,\n queryGraph,\n getNodeById,\n getGraphLabels,\n labels,\n selectedLabel,\n setSelectedLabel,\n queryResult,\n setQueryResult,\n refreshState,\n ingestDocs,\n ingestText,\n selectedNodeId,\n setSelectedNodeId,\n ingestYT,\n };\n};\n","\"use client\";\n\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useUserContext } from \"@elqnt/auth\";\nimport { useState } from \"react\";\nexport type UseKnowledgeGraphAnalyticsType = {\n isLoading: boolean;\n};\n\nexport const useKnowledgeGraphAnalytics = (\n overrideOrgId?: string\n): UseKnowledgeGraphAnalyticsType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n\n return {\n isLoading,\n };\n};\n","// Code generated by tygo. DO NOT EDIT.\nimport { ResponseMetadata } from \"@elqnt/types\";\n\n//////////\n// source: kg-models.go\n\nexport interface KGNode {\n id: string;\n label: string;\n fields: { [key: string]: any};\n relationships?: KGEdge[];\n score?: number /* float64 */;\n}\nexport interface KGEdge {\n id: string;\n label: string;\n fields: { [key: string]: any};\n from: string;\n to: string;\n}\nexport interface KGNodeIngestRequest {\n label: string;\n keyField?: string;\n reverseEdgeLabel?: string;\n fields: { [key: string]: any};\n edges?: KGEdgeIngestRequest[];\n duplicatePolicy?: DuplicatePolicy;\n generateEmbeddings?: boolean;\n embeddingsSource?: string;\n embeddingsFields?: string[];\n}\nexport type DuplicatePolicy = string;\nexport const DuplicatePolicyCreateIf: DuplicatePolicy = \"createIfNotExist\";\nexport const DuplicatePolicyIgnore: DuplicatePolicy = \"ignore\";\nexport const DuplicatePolicyReplace: DuplicatePolicy = \"replace\";\nexport const DuplicatePolicyFail: DuplicatePolicy = \"fail\";\nexport const DuplicatePolicyCreate: DuplicatePolicy = \"create\";\nexport interface KGEdgeIngestRequest {\n label: string;\n fields: { [key: string]: any};\n toLabel: string;\n toFieldKey: string;\n toFieldValue: any;\n createReciprocal: boolean;\n reciprocalLabel: string;\n allowEmbeddingsSearch?: boolean;\n}\nexport interface KGQuery {\n label: string;\n fields: KGFieldQuery[];\n limit: number /* int */;\n depth: number /* int */;\n sortBy: string;\n sortOrder: string;\n edges?: KGEdgeQuery[];\n embeddingsSource?: string;\n skipEmbedding?: boolean;\n}\nexport interface KGFieldQuery {\n name: string;\n value: any;\n operator: KGFieldQueryOperator;\n}\nexport type KGFieldQueryOperator = string;\nexport const KGFieldQueryOperatorEqual: KGFieldQueryOperator = \"eq\";\nexport const KGFieldQueryOperatorNotEqual: KGFieldQueryOperator = \"neq\";\nexport const KGFieldQueryOperatorGreater: KGFieldQueryOperator = \"gt\";\nexport const KGFieldQueryOperatorLess: KGFieldQueryOperator = \"lt\";\nexport const KGFieldQueryOperatorGreaterOrEqual: KGFieldQueryOperator = \"gte\";\nexport const KGFieldQueryOperatorLessOrEqual: KGFieldQueryOperator = \"lte\";\nexport const KGFieldQueryOperatorLike: KGFieldQueryOperator = \"like\";\nexport const KGFieldQueryOperatorSimilar: KGFieldQueryOperator = \"similar\";\n/**\n * KGFieldQueryOperatorGreaterOrEqual KGFieldQueryOperator = \"gte\"\n * KGFieldQueryOperatorLessOrEqual KGFieldQueryOperator = \"lte\"\n */\nexport const KGFieldQueryOperatorIn: KGFieldQueryOperator = \"in\";\nexport const KGFieldQueryOperatorArrayContains: KGFieldQueryOperator = \"arrayContains\";\nexport type KGRelationshipDirection = string;\nexport const KGRelationshipDirectionIncoming: KGRelationshipDirection = \"incoming\";\nexport const KGRelationshipDirectionOutgoing: KGRelationshipDirection = \"outgoing\";\nexport interface KGEdgeQuery {\n label: string;\n direction: 'incoming' | 'outgoing';\n fields?: { [key: string]: any};\n /**\n * FromLabel string `json:\"fromLabel\"`\n * FromFieldKey string `json:\"fromFieldKey\"`\n * FromValue interface{} `json:\"fromValue\"`\n */\n toLabel: string;\n toFieldKey: string;\n toFieldValue: any;\n}\nexport interface KGQueryResult {\n nodes: KGNode[];\n edges: KGEdge[];\n}\nexport interface KGLabelInfo {\n label: string;\n count: number /* uint64 */;\n}\nexport interface KGPropertyInfo {\n property: string;\n count: number /* uint64 */;\n}\nexport interface KGPLabelSchema {\n label: string;\n keys: string[];\n}\nexport interface KGArticle {\n id: string;\n title: string;\n content: string;\n lang?: string;\n docUrl?: string;\n paragraphs?: string;\n}\nexport interface KGPropertyFilter {\n property: string;\n value: string;\n}\nexport interface KGPropertyFilterRequest {\n label: string;\n filters: KGPropertyFilter[];\n}\nexport interface DeleteDocumentRequest {\n documentId: string;\n}\nexport interface DeleteDocumentResponse {\n success: boolean;\n deletedNodes: { [key: string]: number /* int */};\n totalDeleted: number /* int */;\n error?: string;\n}\n/**\n * KGSyncJob represents a sync job record in the database\n */\nexport interface KGSyncJob {\n id: string;\n title: string;\n stats: { [key: string]: any};\n startTime: string;\n endTime: string;\n updatedAt?: string;\n}\n/**\n * KGSyncJobUpdateRequest is used to insert or update a sync job\n */\nexport interface KGSyncJobUpdateRequest {\n id: string;\n title: string;\n stats: { [key: string]: any};\n startTime: string;\n endTime: string;\n}\nexport interface KGSyncJobUpdateResponse {\n jobId: string;\n metadata: ResponseMetadata;\n}\nexport interface KGSyncJobListResponse {\n jobs: KGSyncJob[];\n metadata: ResponseMetadata;\n}\n/**\n * KGSyncJobListRequest is used to list sync jobs with filters\n */\nexport interface KGSyncJobListRequest {\n limit?: number /* int */;\n offset?: number /* int */;\n startFrom?: string;\n endTo?: string;\n}\n","// Code generated by tygo. DO NOT EDIT.\n\n//////////\n// source: designer-models.go\n\n/**\n * GraphNodeDefinition represents a node type in the knowledge graph\n */\nexport interface GraphNodeDefinition {\n label: string;\n description: string;\n schema: { [key: string]: any};\n createdAt: string /* RFC3339 */;\n updatedAt: string /* RFC3339 */;\n}\n/**\n * GraphEdgeDefinition represents an edge type in the knowledge graph\n */\nexport interface GraphEdgeDefinition {\n label: string;\n description: string;\n fromNode: string;\n toNode: string;\n schema: { [key: string]: any};\n createdAt: string /* RFC3339 */;\n updatedAt: string /* RFC3339 */;\n}\n/**\n * Request/Response types\n */\nexport interface GraphNodeRequest {\n node: GraphNodeDefinition;\n}\nexport interface GraphNodeResponse {\n node?: GraphNodeDefinition;\n nodes?: GraphNodeDefinition[];\n success: boolean;\n error?: string;\n}\nexport interface GraphEdgeRequest {\n edge: GraphEdgeDefinition;\n}\nexport interface GraphEdgeResponse {\n edge?: GraphEdgeDefinition;\n edges?: GraphEdgeDefinition[];\n success: boolean;\n error?: string;\n}\n\n//////////\n// source: subjects.go\n\n/**\n * KG Designer Node subjects\n */\nexport const KGDesignerNodeCreate = \"kg.designer.node.create\";\nexport const KGDesignerNodeUpdate = \"kg.designer.node.update.*\";\nexport const KGDesignerNodeDelete = \"kg.designer.node.delete.*\";\nexport const KGDesignerNodeGet = \"kg.designer.node.get.*\";\nexport const KGDesignerNodeList = \"kg.designer.node.list\";\n/**\n * KG Designer Edge subjects\n */\nexport const KGDesignerEdgeCreate = \"kg.designer.edge.create\";\nexport const KGDesignerEdgeUpdate = \"kg.designer.edge.update.*\";\nexport const KGDesignerEdgeDelete = \"kg.designer.edge.delete.*\";\nexport const KGDesignerEdgeGet = \"kg.designer.edge.get.*\";\nexport const KGDesignerEdgeList = \"kg.designer.edge.list\";\n/**\n * KG Database subjects\n */\nexport const KGDBCreate = \"kg.db.create\";\n/**\n * KG Document subjects\n */\nexport const KGDocumentDelete = \"kg_ingest.document.delete\";\n/**\n * KG Sync Job subjects\n */\nexport const KGSyncJobUpdate = \"kg.sync.job.update\";\nexport const KGSyncJobList = \"kg.sync.job.list\";\n/**\n * KG Optimization subjects\n */\nexport const KGGraphOptimize = \"kg.graph.optimize\";\n","\"use client\";\n\nimport { ReactNode, createContext, useContext } from \"react\";\nimport {\n UseKnowledgeGraphType,\n useKnowledgeGraph,\n} from \"../hooks/use-knowledge-graph\";\n\nexport const KnowledgeGraphContext = createContext<\n UseKnowledgeGraphType | undefined\n>(undefined);\n\nexport function KnowledgeGraphContextProvider(props: {\n children: ReactNode;\n overrideOrgId?: string;\n}) {\n const { children, overrideOrgId } = props;\n\n const useKG = useKnowledgeGraph(overrideOrgId);\n\n return (\n <KnowledgeGraphContext.Provider value={useKG}>\n {children}\n </KnowledgeGraphContext.Provider>\n );\n}\n\nexport const useKnowledgeGraphContext = () => {\n const context = useContext(KnowledgeGraphContext);\n if (context === undefined) {\n throw new Error(\n \"useKnowledgeGraphContext must be used within a KnowledgeGraphContextProvider\"\n );\n }\n return context;\n};\n"],"mappings":"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","names":["labels","useNatsContext","useUserContext","useState"]}
1
+ {"version":3,"sources":["../consts.ts","../hooks/use-knowledge-graph.ts","../hooks/use-knowledge-graph-analytics.ts","../state/knowledge-graph-context.tsx"],"sourcesContent":["export const Test = \"hi\";","\"use client\";\n\nimport { useUserContext } from \"@elqnt/auth\";\nimport { DocsIngestionRequest } from \"@elqnt/docs\";\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useEffect, useState } from \"react\";\nimport {\n KGLabelInfo,\n KGNode,\n KGNodeIngestRequest,\n KGQuery,\n KGQueryResult,\n} from \"../models\";\n\ntype Success = { success: boolean };\n\nexport type UseKnowledgeGraphType = {\n isLoading: boolean;\n ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;\n ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;\n updateNode: (\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ) => Promise<Success | Error>;\n ingestDocs: (\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ) => Promise<Success | Error>;\n\n ingestText: (\n text: string,\n mode: \"entities\" | \"snippets\"\n ) => Promise<Success | Error>;\n\n ingestYT: (url: string) => Promise<Success | Error>;\n\n queryGraph: (query: KGQuery) => Promise<KGQueryResult>;\n getGraphLabels: () => Promise<KGLabelInfo[] | Error>;\n labels: KGLabelInfo[] | undefined;\n selectedLabel: string | undefined;\n setSelectedLabel: (label: string) => void;\n queryResult: KGQueryResult | undefined;\n setQueryResult: (res: KGQueryResult) => void;\n refreshState: () => void;\n selectedNodeId: string | undefined;\n setSelectedNodeId: (id: string | undefined) => void;\n getNodeById: (id: string) => Promise<KGNode | Error>;\n};\n\nexport const useKnowledgeGraph = (\n overrideOrgId?: string\n): UseKnowledgeGraphType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n const [selectedNodeId, setSelectedNodeId] = useState<string | undefined>(\n undefined\n );\n\n const orgId = overrideOrgId ?? selectedOrgId;\n\n const [labels, setLabels] = useState<KGLabelInfo[] | undefined>(undefined);\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>(\n undefined\n );\n const [queryResult, setQueryResult] = useState<KGQueryResult | undefined>(\n undefined\n );\n\n const [stateTrigger, setStateTrigger] = useState(0);\n\n async function ingestNode(\n node: KGNodeIngestRequest\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest, Success>(\n \"kg.ingest.node\",\n node,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestNodes(\n nodes: KGNodeIngestRequest[]\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<KGNodeIngestRequest[], Success>(\n \"kg.ingest.nodes\",\n nodes,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function updateNode(\n nodeId: string,\n label: string,\n fields: Record<string, any>\n ): Promise<Success | Error> {\n const nodeRequest: KGNodeIngestRequest = {\n label,\n keyField: \"id\",\n fields: {\n ...fields,\n id: nodeId,\n },\n duplicatePolicy: \"replace\",\n };\n\n const result = await ingestNode(nodeRequest);\n\n // Optimize graph after successful update (non-blocking, with delay)\n if (!(result instanceof Error)) {\n // Wait 2 seconds to ensure node is fully written to ClickHouse\n setTimeout(() => {\n optimizeGraph().catch(err =>\n console.error(\"Failed to optimize graph after node update:\", err)\n );\n }, 2000);\n }\n\n return result;\n }\n\n async function optimizeGraph(): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<{}, Success>(\n \"kg.graph.optimize\",\n {},\n {\n orgId,\n }\n );\n\n if (data instanceof Error) {\n console.error(\"Graph optimization failed:\", data);\n return data;\n }\n\n console.log(\"Graph optimized successfully\");\n return data;\n }\n\n async function ingestDocs(\n urls: string[],\n mode: \"documents\" | \"entities\" | \"snippets\",\n brief: string,\n labels: string[]\n ): Promise<Success | Error> {\n // todo: implement\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<DocsIngestionRequest, Success>(\n \"docs.kg.ingest\",\n { urls, mode, brief, labels },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestText(\n text: string,\n mode: \"entities\" | \"snippets\"\n ): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestText\",\n { text, mode },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function ingestYT(url: string): Promise<Success | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n const data = await request<any, Success>(\n \"docs.kg.ingestYT\",\n { url },\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function queryGraph(query: KGQuery): Promise<KGQueryResult> {\n if (!orgId) {\n throw new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n throw new Error(\"Not connected to NATS\");\n }\n\n setIsLoading(true);\n\n const data = await request<KGQuery, KGQueryResult>(\n \"kg.query.graph\",\n query,\n {\n orgId,\n }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getNodeById(id: string): Promise<KGNode | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n const data = await request<any, KGNode>(\n \"kg.query.nodeById\",\n { id },\n { orgId }\n );\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n return data;\n }\n\n async function getGraphLabels(): Promise<KGLabelInfo[] | Error> {\n if (!orgId) {\n return new Error(\"No orgId provided\");\n }\n\n if (!natsConnected) {\n return new Error(\"Not connected to NATS\");\n }\n\n // console.log(\"getGraphLabels\", { orgId });\n\n setIsLoading(true);\n\n const data = await request<any, KGLabelInfo[]>(\n \"kg.graph.labels\",\n {},\n { orgId }\n );\n\n setIsLoading(false);\n\n if (data instanceof Error) {\n console.error(data);\n return data;\n }\n\n // todo: global error\n if (!Array.isArray(data) && typeof data === \"object\") {\n const err = data as any;\n return new Error(err?.message ?? err?.error ?? err);\n }\n\n return data;\n }\n\n useEffect(() => {\n if (!natsConnected || !orgId) {\n return;\n }\n async function getLabels(): Promise<KGLabelInfo[] | Error> {\n const data = await getGraphLabels();\n if (data instanceof Error) {\n // console.error(data);\n return [];\n }\n setLabels(data);\n return data;\n }\n getLabels();\n }, [natsConnected, orgId, stateTrigger]);\n\n useEffect(() => {\n if (!natsConnected || !orgId || !selectedLabel) {\n return;\n }\n async function getGraphQueryResult() {\n if (!selectedLabel) return;\n\n console.log(\"will getGraphQueryResult\", { orgId, selectedLabel });\n\n const query: KGQuery = {\n label: selectedLabel,\n fields: [],\n limit: 5_00,\n sortBy: \"\",\n sortOrder: \"asc\",\n // edges: [{ label: \"student of\", direction: \"outgoing\" }],\n depth: 2,\n };\n\n const res = await queryGraph(query);\n\n if (res instanceof Error) {\n console.error(res);\n return;\n }\n setQueryResult(res);\n console.log(\"graph query response \", {\n nodesCount: res.nodes?.length,\n edgesCount: res.edges?.length,\n });\n }\n getGraphQueryResult();\n }, [natsConnected, orgId, selectedLabel, stateTrigger]);\n\n function refreshState() {\n setStateTrigger(stateTrigger + 1);\n }\n\n return {\n isLoading,\n ingestNode,\n ingestNodes,\n updateNode,\n queryGraph,\n getNodeById,\n getGraphLabels,\n labels,\n selectedLabel,\n setSelectedLabel,\n queryResult,\n setQueryResult,\n refreshState,\n ingestDocs,\n ingestText,\n selectedNodeId,\n setSelectedNodeId,\n ingestYT,\n };\n};\n","\"use client\";\n\nimport { useNatsContext } from \"@elqnt/nats\";\nimport { useUserContext } from \"@elqnt/auth\";\nimport { useState } from \"react\";\nexport type UseKnowledgeGraphAnalyticsType = {\n isLoading: boolean;\n};\n\nexport const useKnowledgeGraphAnalytics = (\n overrideOrgId?: string\n): UseKnowledgeGraphAnalyticsType => {\n const { selectedOrgId } = useUserContext();\n const [isLoading, setIsLoading] = useState(false);\n const { natsConnected, request } = useNatsContext();\n\n return {\n isLoading,\n };\n};\n","\"use client\";\n\nimport { ReactNode, createContext, useContext } from \"react\";\nimport {\n UseKnowledgeGraphType,\n useKnowledgeGraph,\n} from \"../hooks/use-knowledge-graph\";\n\nexport const KnowledgeGraphContext = createContext<\n UseKnowledgeGraphType | undefined\n>(undefined);\n\nexport function KnowledgeGraphContextProvider(props: {\n children: ReactNode;\n overrideOrgId?: string;\n}) {\n const { children, overrideOrgId } = props;\n\n const useKG = useKnowledgeGraph(overrideOrgId);\n\n return (\n <KnowledgeGraphContext.Provider value={useKG}>\n {children}\n </KnowledgeGraphContext.Provider>\n );\n}\n\nexport const useKnowledgeGraphContext = () => {\n const context = useContext(KnowledgeGraphContext);\n if (context === undefined) {\n throw new Error(\n \"useKnowledgeGraphContext must be used within a KnowledgeGraphContextProvider\"\n );\n }\n return context;\n};\n"],"mappings":"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","names":["labels","useNatsContext","useUserContext","useState"]}
@@ -0,0 +1,3 @@
1
+ export { DeleteDocumentRequest, DeleteDocumentResponse, DuplicatePolicy, DuplicatePolicyCreate, DuplicatePolicyCreateIf, DuplicatePolicyFail, DuplicatePolicyIgnore, DuplicatePolicyReplace, KGArticle, KGEdge, KGEdgeIngestRequest, KGEdgeQuery, KGFieldQuery, KGFieldQueryOperator, KGFieldQueryOperatorArrayContains, KGFieldQueryOperatorEqual, KGFieldQueryOperatorGreater, KGFieldQueryOperatorGreaterOrEqual, KGFieldQueryOperatorIn, KGFieldQueryOperatorLess, KGFieldQueryOperatorLessOrEqual, KGFieldQueryOperatorLike, KGFieldQueryOperatorNotEqual, KGFieldQueryOperatorSimilar, KGLabelInfo, KGNode, KGNodeIngestRequest, KGPLabelSchema, KGPropertyFilter, KGPropertyFilterRequest, KGPropertyInfo, KGQuery, KGQueryResult, KGRelationshipDirection, KGRelationshipDirectionIncoming, KGRelationshipDirectionOutgoing, KGSyncJob, KGSyncJobListRequest, KGSyncJobListResponse, KGSyncJobUpdateRequest, KGSyncJobUpdateResponse } from './kg.mjs';
2
+ export { GraphEdgeDefinition, GraphEdgeRequest, GraphEdgeResponse, GraphNodeDefinition, GraphNodeRequest, GraphNodeResponse, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, KGGraphOptimize, KGSyncJobList, KGSyncJobUpdate } from './kg-designer.mjs';
3
+ import '@elqnt/types';
@@ -0,0 +1,3 @@
1
+ export { DeleteDocumentRequest, DeleteDocumentResponse, DuplicatePolicy, DuplicatePolicyCreate, DuplicatePolicyCreateIf, DuplicatePolicyFail, DuplicatePolicyIgnore, DuplicatePolicyReplace, KGArticle, KGEdge, KGEdgeIngestRequest, KGEdgeQuery, KGFieldQuery, KGFieldQueryOperator, KGFieldQueryOperatorArrayContains, KGFieldQueryOperatorEqual, KGFieldQueryOperatorGreater, KGFieldQueryOperatorGreaterOrEqual, KGFieldQueryOperatorIn, KGFieldQueryOperatorLess, KGFieldQueryOperatorLessOrEqual, KGFieldQueryOperatorLike, KGFieldQueryOperatorNotEqual, KGFieldQueryOperatorSimilar, KGLabelInfo, KGNode, KGNodeIngestRequest, KGPLabelSchema, KGPropertyFilter, KGPropertyFilterRequest, KGPropertyInfo, KGQuery, KGQueryResult, KGRelationshipDirection, KGRelationshipDirectionIncoming, KGRelationshipDirectionOutgoing, KGSyncJob, KGSyncJobListRequest, KGSyncJobListResponse, KGSyncJobUpdateRequest, KGSyncJobUpdateResponse } from './kg.js';
2
+ export { GraphEdgeDefinition, GraphEdgeRequest, GraphEdgeResponse, GraphNodeDefinition, GraphNodeRequest, GraphNodeResponse, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, KGGraphOptimize, KGSyncJobList, KGSyncJobUpdate } from './kg-designer.js';
3
+ import '@elqnt/types';
@@ -0,0 +1,72 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-RDWVE6B2.js');
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+ var _chunkHOOYDY65js = require('../chunk-HOOYDY65.js');
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+ var _chunk5NCBQDATjs = require('../chunk-5NCBQDAT.js');
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+
69
+
70
+
71
+ exports.DuplicatePolicyCreate = _chunk5NCBQDATjs.DuplicatePolicyCreate; exports.DuplicatePolicyCreateIf = _chunk5NCBQDATjs.DuplicatePolicyCreateIf; exports.DuplicatePolicyFail = _chunk5NCBQDATjs.DuplicatePolicyFail; exports.DuplicatePolicyIgnore = _chunk5NCBQDATjs.DuplicatePolicyIgnore; exports.DuplicatePolicyReplace = _chunk5NCBQDATjs.DuplicatePolicyReplace; exports.KGDBCreate = _chunkHOOYDY65js.KGDBCreate; exports.KGDesignerEdgeCreate = _chunkHOOYDY65js.KGDesignerEdgeCreate; exports.KGDesignerEdgeDelete = _chunkHOOYDY65js.KGDesignerEdgeDelete; exports.KGDesignerEdgeGet = _chunkHOOYDY65js.KGDesignerEdgeGet; exports.KGDesignerEdgeList = _chunkHOOYDY65js.KGDesignerEdgeList; exports.KGDesignerEdgeUpdate = _chunkHOOYDY65js.KGDesignerEdgeUpdate; exports.KGDesignerNodeCreate = _chunkHOOYDY65js.KGDesignerNodeCreate; exports.KGDesignerNodeDelete = _chunkHOOYDY65js.KGDesignerNodeDelete; exports.KGDesignerNodeGet = _chunkHOOYDY65js.KGDesignerNodeGet; exports.KGDesignerNodeList = _chunkHOOYDY65js.KGDesignerNodeList; exports.KGDesignerNodeUpdate = _chunkHOOYDY65js.KGDesignerNodeUpdate; exports.KGDocumentDelete = _chunkHOOYDY65js.KGDocumentDelete; exports.KGFieldQueryOperatorArrayContains = _chunk5NCBQDATjs.KGFieldQueryOperatorArrayContains; exports.KGFieldQueryOperatorEqual = _chunk5NCBQDATjs.KGFieldQueryOperatorEqual; exports.KGFieldQueryOperatorGreater = _chunk5NCBQDATjs.KGFieldQueryOperatorGreater; exports.KGFieldQueryOperatorGreaterOrEqual = _chunk5NCBQDATjs.KGFieldQueryOperatorGreaterOrEqual; exports.KGFieldQueryOperatorIn = _chunk5NCBQDATjs.KGFieldQueryOperatorIn; exports.KGFieldQueryOperatorLess = _chunk5NCBQDATjs.KGFieldQueryOperatorLess; exports.KGFieldQueryOperatorLessOrEqual = _chunk5NCBQDATjs.KGFieldQueryOperatorLessOrEqual; exports.KGFieldQueryOperatorLike = _chunk5NCBQDATjs.KGFieldQueryOperatorLike; exports.KGFieldQueryOperatorNotEqual = _chunk5NCBQDATjs.KGFieldQueryOperatorNotEqual; exports.KGFieldQueryOperatorSimilar = _chunk5NCBQDATjs.KGFieldQueryOperatorSimilar; exports.KGGraphOptimize = _chunkHOOYDY65js.KGGraphOptimize; exports.KGRelationshipDirectionIncoming = _chunk5NCBQDATjs.KGRelationshipDirectionIncoming; exports.KGRelationshipDirectionOutgoing = _chunk5NCBQDATjs.KGRelationshipDirectionOutgoing; exports.KGSyncJobList = _chunkHOOYDY65js.KGSyncJobList; exports.KGSyncJobUpdate = _chunkHOOYDY65js.KGSyncJobUpdate;
72
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/models/index.js"],"names":[],"mappings":"AAAA,yGAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,2zEAAC","file":"/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/models/index.js"}
@@ -0,0 +1,72 @@
1
+ import "../chunk-J3XZF6JO.mjs";
2
+ import {
3
+ KGDBCreate,
4
+ KGDesignerEdgeCreate,
5
+ KGDesignerEdgeDelete,
6
+ KGDesignerEdgeGet,
7
+ KGDesignerEdgeList,
8
+ KGDesignerEdgeUpdate,
9
+ KGDesignerNodeCreate,
10
+ KGDesignerNodeDelete,
11
+ KGDesignerNodeGet,
12
+ KGDesignerNodeList,
13
+ KGDesignerNodeUpdate,
14
+ KGDocumentDelete,
15
+ KGGraphOptimize,
16
+ KGSyncJobList,
17
+ KGSyncJobUpdate
18
+ } from "../chunk-ZKSYF4EB.mjs";
19
+ import {
20
+ DuplicatePolicyCreate,
21
+ DuplicatePolicyCreateIf,
22
+ DuplicatePolicyFail,
23
+ DuplicatePolicyIgnore,
24
+ DuplicatePolicyReplace,
25
+ KGFieldQueryOperatorArrayContains,
26
+ KGFieldQueryOperatorEqual,
27
+ KGFieldQueryOperatorGreater,
28
+ KGFieldQueryOperatorGreaterOrEqual,
29
+ KGFieldQueryOperatorIn,
30
+ KGFieldQueryOperatorLess,
31
+ KGFieldQueryOperatorLessOrEqual,
32
+ KGFieldQueryOperatorLike,
33
+ KGFieldQueryOperatorNotEqual,
34
+ KGFieldQueryOperatorSimilar,
35
+ KGRelationshipDirectionIncoming,
36
+ KGRelationshipDirectionOutgoing
37
+ } from "../chunk-26VARHUJ.mjs";
38
+ export {
39
+ DuplicatePolicyCreate,
40
+ DuplicatePolicyCreateIf,
41
+ DuplicatePolicyFail,
42
+ DuplicatePolicyIgnore,
43
+ DuplicatePolicyReplace,
44
+ KGDBCreate,
45
+ KGDesignerEdgeCreate,
46
+ KGDesignerEdgeDelete,
47
+ KGDesignerEdgeGet,
48
+ KGDesignerEdgeList,
49
+ KGDesignerEdgeUpdate,
50
+ KGDesignerNodeCreate,
51
+ KGDesignerNodeDelete,
52
+ KGDesignerNodeGet,
53
+ KGDesignerNodeList,
54
+ KGDesignerNodeUpdate,
55
+ KGDocumentDelete,
56
+ KGFieldQueryOperatorArrayContains,
57
+ KGFieldQueryOperatorEqual,
58
+ KGFieldQueryOperatorGreater,
59
+ KGFieldQueryOperatorGreaterOrEqual,
60
+ KGFieldQueryOperatorIn,
61
+ KGFieldQueryOperatorLess,
62
+ KGFieldQueryOperatorLessOrEqual,
63
+ KGFieldQueryOperatorLike,
64
+ KGFieldQueryOperatorNotEqual,
65
+ KGFieldQueryOperatorSimilar,
66
+ KGGraphOptimize,
67
+ KGRelationshipDirectionIncoming,
68
+ KGRelationshipDirectionOutgoing,
69
+ KGSyncJobList,
70
+ KGSyncJobUpdate
71
+ };
72
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * GraphNodeDefinition represents a node type in the knowledge graph
3
+ */
4
+ interface GraphNodeDefinition {
5
+ label: string;
6
+ description: string;
7
+ schema: {
8
+ [key: string]: any;
9
+ };
10
+ createdAt: string;
11
+ updatedAt: string;
12
+ }
13
+ /**
14
+ * GraphEdgeDefinition represents an edge type in the knowledge graph
15
+ */
16
+ interface GraphEdgeDefinition {
17
+ label: string;
18
+ description: string;
19
+ fromNode: string;
20
+ toNode: string;
21
+ schema: {
22
+ [key: string]: any;
23
+ };
24
+ createdAt: string;
25
+ updatedAt: string;
26
+ }
27
+ /**
28
+ * Request/Response types
29
+ */
30
+ interface GraphNodeRequest {
31
+ node: GraphNodeDefinition;
32
+ }
33
+ interface GraphNodeResponse {
34
+ node?: GraphNodeDefinition;
35
+ nodes?: GraphNodeDefinition[];
36
+ success: boolean;
37
+ error?: string;
38
+ }
39
+ interface GraphEdgeRequest {
40
+ edge: GraphEdgeDefinition;
41
+ }
42
+ interface GraphEdgeResponse {
43
+ edge?: GraphEdgeDefinition;
44
+ edges?: GraphEdgeDefinition[];
45
+ success: boolean;
46
+ error?: string;
47
+ }
48
+ /**
49
+ * KG Designer Node subjects
50
+ */
51
+ declare const KGDesignerNodeCreate = "kg.designer.node.create";
52
+ declare const KGDesignerNodeUpdate = "kg.designer.node.update.*";
53
+ declare const KGDesignerNodeDelete = "kg.designer.node.delete.*";
54
+ declare const KGDesignerNodeGet = "kg.designer.node.get.*";
55
+ declare const KGDesignerNodeList = "kg.designer.node.list";
56
+ /**
57
+ * KG Designer Edge subjects
58
+ */
59
+ declare const KGDesignerEdgeCreate = "kg.designer.edge.create";
60
+ declare const KGDesignerEdgeUpdate = "kg.designer.edge.update.*";
61
+ declare const KGDesignerEdgeDelete = "kg.designer.edge.delete.*";
62
+ declare const KGDesignerEdgeGet = "kg.designer.edge.get.*";
63
+ declare const KGDesignerEdgeList = "kg.designer.edge.list";
64
+ /**
65
+ * KG Database subjects
66
+ */
67
+ declare const KGDBCreate = "kg.db.create";
68
+ /**
69
+ * KG Document subjects
70
+ */
71
+ declare const KGDocumentDelete = "kg_ingest.document.delete";
72
+ /**
73
+ * KG Sync Job subjects
74
+ */
75
+ declare const KGSyncJobUpdate = "kg.sync.job.update";
76
+ declare const KGSyncJobList = "kg.sync.job.list";
77
+ /**
78
+ * KG Optimization subjects
79
+ */
80
+ declare const KGGraphOptimize = "kg.graph.optimize";
81
+
82
+ export { type GraphEdgeDefinition, type GraphEdgeRequest, type GraphEdgeResponse, type GraphNodeDefinition, type GraphNodeRequest, type GraphNodeResponse, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, KGGraphOptimize, KGSyncJobList, KGSyncJobUpdate };
@@ -0,0 +1,82 @@
1
+ /**
2
+ * GraphNodeDefinition represents a node type in the knowledge graph
3
+ */
4
+ interface GraphNodeDefinition {
5
+ label: string;
6
+ description: string;
7
+ schema: {
8
+ [key: string]: any;
9
+ };
10
+ createdAt: string;
11
+ updatedAt: string;
12
+ }
13
+ /**
14
+ * GraphEdgeDefinition represents an edge type in the knowledge graph
15
+ */
16
+ interface GraphEdgeDefinition {
17
+ label: string;
18
+ description: string;
19
+ fromNode: string;
20
+ toNode: string;
21
+ schema: {
22
+ [key: string]: any;
23
+ };
24
+ createdAt: string;
25
+ updatedAt: string;
26
+ }
27
+ /**
28
+ * Request/Response types
29
+ */
30
+ interface GraphNodeRequest {
31
+ node: GraphNodeDefinition;
32
+ }
33
+ interface GraphNodeResponse {
34
+ node?: GraphNodeDefinition;
35
+ nodes?: GraphNodeDefinition[];
36
+ success: boolean;
37
+ error?: string;
38
+ }
39
+ interface GraphEdgeRequest {
40
+ edge: GraphEdgeDefinition;
41
+ }
42
+ interface GraphEdgeResponse {
43
+ edge?: GraphEdgeDefinition;
44
+ edges?: GraphEdgeDefinition[];
45
+ success: boolean;
46
+ error?: string;
47
+ }
48
+ /**
49
+ * KG Designer Node subjects
50
+ */
51
+ declare const KGDesignerNodeCreate = "kg.designer.node.create";
52
+ declare const KGDesignerNodeUpdate = "kg.designer.node.update.*";
53
+ declare const KGDesignerNodeDelete = "kg.designer.node.delete.*";
54
+ declare const KGDesignerNodeGet = "kg.designer.node.get.*";
55
+ declare const KGDesignerNodeList = "kg.designer.node.list";
56
+ /**
57
+ * KG Designer Edge subjects
58
+ */
59
+ declare const KGDesignerEdgeCreate = "kg.designer.edge.create";
60
+ declare const KGDesignerEdgeUpdate = "kg.designer.edge.update.*";
61
+ declare const KGDesignerEdgeDelete = "kg.designer.edge.delete.*";
62
+ declare const KGDesignerEdgeGet = "kg.designer.edge.get.*";
63
+ declare const KGDesignerEdgeList = "kg.designer.edge.list";
64
+ /**
65
+ * KG Database subjects
66
+ */
67
+ declare const KGDBCreate = "kg.db.create";
68
+ /**
69
+ * KG Document subjects
70
+ */
71
+ declare const KGDocumentDelete = "kg_ingest.document.delete";
72
+ /**
73
+ * KG Sync Job subjects
74
+ */
75
+ declare const KGSyncJobUpdate = "kg.sync.job.update";
76
+ declare const KGSyncJobList = "kg.sync.job.list";
77
+ /**
78
+ * KG Optimization subjects
79
+ */
80
+ declare const KGGraphOptimize = "kg.graph.optimize";
81
+
82
+ export { type GraphEdgeDefinition, type GraphEdgeRequest, type GraphEdgeResponse, type GraphNodeDefinition, type GraphNodeRequest, type GraphNodeResponse, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, KGGraphOptimize, KGSyncJobList, KGSyncJobUpdate };