UNPKG

@neo4j/graphql

Version:

A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations

63 lines 2.43 kB
"use strict"; /* * Copyright (c) "Neo4j" * Neo4j Sweden AB [http://neo4j.com] * * This file is part of Neo4j. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.vectorDirective = exports.vectorProviderNames = void 0; const graphql_1 = require("graphql"); exports.vectorProviderNames = { VERTEX_AI: "VertexAI", OPEN_AI: "OpenAI", AZURE_OPEN_AI: "AzureOpenAI", BEDROCK: "Bedrock", }; const VectorProviderEnum = new graphql_1.GraphQLEnumType({ name: "VectorProvider", description: "*For use in the @vector directive only", values: Object.keys(exports.vectorProviderNames).reduce((acc, key) => { acc[key] = { value: exports.vectorProviderNames[key] }; return acc; }, {}), }); exports.vectorDirective = new graphql_1.GraphQLDirective({ name: "vector", description: "Informs @neo4j/graphql that there should be a vector index in the database, allows users to search by phrase in the generated schema.", args: { indexes: { type: new graphql_1.GraphQLNonNull(new graphql_1.GraphQLList(new graphql_1.GraphQLInputObjectType({ name: "VectorInput", fields: { indexName: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString), }, embeddingProperty: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString), }, queryName: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString), }, provider: { type: VectorProviderEnum, }, }, }))), }, }, locations: [graphql_1.DirectiveLocation.OBJECT], }); //# sourceMappingURL=vector.js.map