UNPKG

@neo4j/cypher-builder

Version:

A programmatic API for building Cypher queries for Neo4j

55 lines (54 loc) 2.01 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.WithDelete = void 0; const Delete_1 = require("../../sub-clauses/Delete"); const Mixin_1 = require("../Mixin"); class WithDelete extends Mixin_1.Mixin { /** Add a `DELETE` subclause * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/delete/ | Cypher Documentation} */ delete(...deleteInput) { this.createDeleteClause(deleteInput); return this; } /** Adds a `DETACH DELETE` subclause * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/delete/ | Cypher Documentation} */ detachDelete(...deleteInput) { const deleteClause = this.createDeleteClause(deleteInput); deleteClause.detach(); return this; } /** Add a `NODETACH DELETE` subclause * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/delete/#delete-nodetach | Cypher Documentation} * @since Neo4j 5.14 */ noDetachDelete(...deleteInput) { const deleteClause = this.createDeleteClause(deleteInput); deleteClause.noDetach(); return this; } createDeleteClause(deleteInput) { this.deleteClause = new Delete_1.DeleteClause(this, deleteInput); return this.deleteClause; } } exports.WithDelete = WithDelete;