@neo4j/cypher-builder
Advanced tools
Comparing version 0.1.4 to 0.1.5
@@ -7,3 +7,3 @@ import type { CypherEnvironment } from "../Environment"; | ||
import { WithSet } from "./mixins/WithSet"; | ||
declare type Params = Record<string, Param<any>>; | ||
type Params = Record<string, Param<any>>; | ||
export interface Create extends WithReturn, WithSet { | ||
@@ -10,0 +10,0 @@ } |
@@ -13,3 +13,3 @@ import type { CypherEnvironment } from "../Environment"; | ||
} | ||
declare type ForeachClauses = Foreach | SetClause | RemoveClause | Create | Merge | DeleteClause; | ||
type ForeachClauses = Foreach | SetClause | RemoveClause | Create | Merge | DeleteClause; | ||
export declare class Foreach extends Clause { | ||
@@ -16,0 +16,0 @@ private variable; |
@@ -8,3 +8,3 @@ import { ClauseMixin } from "./ClauseMixin"; | ||
import type { Variable } from "../../variables/Variable"; | ||
declare type VariableWithProperties = Variable | NodeRef | RelationshipRef | PropertyRef; | ||
type VariableWithProperties = Variable | NodeRef | RelationshipRef | PropertyRef; | ||
export declare abstract class WithWhere extends ClauseMixin { | ||
@@ -11,0 +11,0 @@ protected whereSubClause: Where | undefined; |
import type { CypherEnvironment } from "../Environment"; | ||
import { Clause } from "./Clause"; | ||
declare type RawCypherCallback = (env: CypherEnvironment) => [string, Record<string, any>] | string | undefined; | ||
type RawCypherCallback = (env: CypherEnvironment) => [string, Record<string, any>] | string | undefined; | ||
/** For compatibility reasons, allows for a raw string to be used as a clause */ | ||
@@ -5,0 +5,0 @@ export declare class RawCypher extends Clause { |
@@ -5,3 +5,3 @@ import { CypherASTNode } from "../../CypherASTNode"; | ||
import type { RelationshipRef } from "../../variables/RelationshipRef"; | ||
export declare type DeleteInput = Array<NodeRef | RelationshipRef>; | ||
export type DeleteInput = Array<NodeRef | RelationshipRef>; | ||
export declare class DeleteClause extends CypherASTNode { | ||
@@ -8,0 +8,0 @@ private deleteInput; |
@@ -7,3 +7,3 @@ import type { Call } from "../Call"; | ||
import { CypherASTNode } from "../../CypherASTNode"; | ||
export declare type SetParam = [PropertyRef, Param<any>]; | ||
export type SetParam = [PropertyRef, Param<any>]; | ||
/** Represents a WITH statement to import variables into a CALL subquery */ | ||
@@ -10,0 +10,0 @@ export declare class ImportWith extends CypherASTNode { |
import type { CypherEnvironment } from "../../Environment"; | ||
import { SetClause, SetParam } from "./Set"; | ||
export declare type OnCreateParam = SetParam; | ||
export type OnCreateParam = SetParam; | ||
export declare class OnCreate extends SetClause { | ||
@@ -5,0 +5,0 @@ getCypher(env: CypherEnvironment): string; |
@@ -7,4 +7,4 @@ import type { CypherEnvironment } from "../../Environment"; | ||
import type { Integer } from "neo4j-driver"; | ||
export declare type Order = "ASC" | "DESC"; | ||
declare type OrderProjectionElement = [Expr, Order]; | ||
export type Order = "ASC" | "DESC"; | ||
type OrderProjectionElement = [Expr, Order]; | ||
export declare class OrderBy extends CypherASTNode { | ||
@@ -11,0 +11,0 @@ private exprs; |
@@ -6,3 +6,3 @@ import type { CypherEnvironment } from "../../Environment"; | ||
import type { Literal } from "../../variables/Literal"; | ||
export declare type ProjectionColumn = Expr | [Expr, string | Variable | Literal]; | ||
export type ProjectionColumn = Expr | [Expr, string | Variable | Literal]; | ||
export declare class Projection extends CypherASTNode { | ||
@@ -9,0 +9,0 @@ private columns; |
import { CypherASTNode } from "../../CypherASTNode"; | ||
import type { CypherEnvironment } from "../../Environment"; | ||
import type { PropertyRef } from "../../variables/PropertyRef"; | ||
export declare type RemoveInput = Array<PropertyRef>; | ||
export type RemoveInput = Array<PropertyRef>; | ||
export declare class RemoveClause extends CypherASTNode { | ||
@@ -6,0 +6,0 @@ private removeInput; |
@@ -7,3 +7,3 @@ import { CypherASTNode } from "../../CypherASTNode"; | ||
import type { MapProjection } from "../../expressions/map/MapProjection"; | ||
export declare type SetParam = [PropertyRef, Exclude<Expr, MapExpr | MapProjection>]; | ||
export type SetParam = [PropertyRef, Exclude<Expr, MapExpr | MapProjection>]; | ||
export declare class SetClause extends CypherASTNode { | ||
@@ -10,0 +10,0 @@ protected params: SetParam[]; |
import type { ClauseMixin } from "../mixins/ClauseMixin"; | ||
declare type AbstractConstructorType<T> = abstract new (...args: any[]) => T; | ||
type AbstractConstructorType<T> = abstract new (...args: any[]) => T; | ||
export declare function mixin(...mixins: AbstractConstructorType<ClauseMixin>[]): any; | ||
export {}; | ||
//# sourceMappingURL=mixin.d.ts.map |
@@ -9,3 +9,3 @@ import type { CypherEnvironment } from "../Environment"; | ||
import { WithWhere } from "./mixins/WithWhere"; | ||
export declare type WithProjection = Variable | [Expr, string | Variable | Literal]; | ||
export type WithProjection = Variable | [Expr, string | Variable | Literal]; | ||
export interface With extends WithOrder, WithReturn, WithWhere { | ||
@@ -12,0 +12,0 @@ } |
@@ -30,3 +30,5 @@ export { Match, OptionalMatch } from "./clauses/Match"; | ||
export { plus, minus } from "./expressions/operations/math"; | ||
export { CypherFunction as Function } from "./expressions/functions/CypherFunction"; | ||
export { coalesce, point, distance, pointDistance, cypherDatetime as datetime, cypherDate as date, cypherLocalTime as localtime, cypherLocalDatetime as localdatetime, cypherTime as time, labels, count, min, max, avg, sum, randomUUID, } from "./expressions/functions/CypherFunction"; | ||
export * from "./expressions/functions/StringFunctions"; | ||
export * from "./expressions/functions/ListFunctions"; | ||
@@ -41,3 +43,2 @@ export { any, all, exists, single } from "./expressions/functions/PredicateFunctions"; | ||
export type { Expr, Predicate, Operation } from "./types"; | ||
export type { CypherFunction as Function } from "./expressions/functions/CypherFunction"; | ||
export type { ProjectionColumn } from "./clauses/sub-clauses/Projection"; | ||
@@ -44,0 +45,0 @@ export type { SetParam } from "./clauses/sub-clauses/Set"; |
@@ -47,4 +47,4 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.point = exports.coalesce = exports.minus = exports.plus = exports.matches = exports.endsWith = exports.startsWith = exports.contains = exports.in = exports.isNotNull = exports.isNull = exports.lte = exports.lt = exports.gte = exports.gt = exports.eq = exports.not = exports.and = exports.or = exports.MapProjection = exports.Map = exports.List = exports.PatternComprehension = exports.ListComprehension = exports.apoc = exports.db = exports.Case = exports.Exists = exports.Null = exports.Literal = exports.Variable = exports.NamedVariable = exports.NamedParam = exports.Param = exports.Relationship = exports.NamedNode = exports.Node = exports.concat = exports.Foreach = exports.Union = exports.Unwind = exports.With = exports.RawCypher = exports.Return = exports.CallProcedure = exports.Call = exports.Merge = exports.Create = exports.OptionalMatch = exports.Match = void 0; | ||
exports.utils = exports.single = exports.exists = exports.all = exports.any = exports.randomUUID = exports.sum = exports.avg = exports.max = exports.min = exports.count = exports.labels = exports.time = exports.localdatetime = exports.localtime = exports.date = exports.datetime = exports.pointDistance = exports.distance = void 0; | ||
exports.coalesce = exports.Function = exports.minus = exports.plus = exports.matches = exports.endsWith = exports.startsWith = exports.contains = exports.in = exports.isNotNull = exports.isNull = exports.lte = exports.lt = exports.gte = exports.gt = exports.eq = exports.not = exports.and = exports.or = exports.MapProjection = exports.Map = exports.List = exports.PatternComprehension = exports.ListComprehension = exports.apoc = exports.db = exports.Case = exports.Exists = exports.Null = exports.Literal = exports.Variable = exports.NamedVariable = exports.NamedParam = exports.Param = exports.Relationship = exports.NamedNode = exports.Node = exports.concat = exports.Foreach = exports.Union = exports.Unwind = exports.With = exports.RawCypher = exports.Return = exports.CallProcedure = exports.Call = exports.Merge = exports.Create = exports.OptionalMatch = exports.Match = void 0; | ||
exports.utils = exports.single = exports.exists = exports.all = exports.any = exports.randomUUID = exports.sum = exports.avg = exports.max = exports.min = exports.count = exports.labels = exports.time = exports.localdatetime = exports.localtime = exports.date = exports.datetime = exports.pointDistance = exports.distance = exports.point = void 0; | ||
// Clauses | ||
@@ -134,18 +134,21 @@ var Match_1 = require("./clauses/Match"); | ||
var CypherFunction_1 = require("./expressions/functions/CypherFunction"); | ||
Object.defineProperty(exports, "coalesce", { enumerable: true, get: function () { return CypherFunction_1.coalesce; } }); | ||
Object.defineProperty(exports, "point", { enumerable: true, get: function () { return CypherFunction_1.point; } }); | ||
Object.defineProperty(exports, "distance", { enumerable: true, get: function () { return CypherFunction_1.distance; } }); | ||
Object.defineProperty(exports, "pointDistance", { enumerable: true, get: function () { return CypherFunction_1.pointDistance; } }); | ||
Object.defineProperty(exports, "datetime", { enumerable: true, get: function () { return CypherFunction_1.cypherDatetime; } }); | ||
Object.defineProperty(exports, "date", { enumerable: true, get: function () { return CypherFunction_1.cypherDate; } }); | ||
Object.defineProperty(exports, "localtime", { enumerable: true, get: function () { return CypherFunction_1.cypherLocalTime; } }); | ||
Object.defineProperty(exports, "localdatetime", { enumerable: true, get: function () { return CypherFunction_1.cypherLocalDatetime; } }); | ||
Object.defineProperty(exports, "time", { enumerable: true, get: function () { return CypherFunction_1.cypherTime; } }); | ||
Object.defineProperty(exports, "labels", { enumerable: true, get: function () { return CypherFunction_1.labels; } }); | ||
Object.defineProperty(exports, "count", { enumerable: true, get: function () { return CypherFunction_1.count; } }); | ||
Object.defineProperty(exports, "min", { enumerable: true, get: function () { return CypherFunction_1.min; } }); | ||
Object.defineProperty(exports, "max", { enumerable: true, get: function () { return CypherFunction_1.max; } }); | ||
Object.defineProperty(exports, "avg", { enumerable: true, get: function () { return CypherFunction_1.avg; } }); | ||
Object.defineProperty(exports, "sum", { enumerable: true, get: function () { return CypherFunction_1.sum; } }); | ||
Object.defineProperty(exports, "randomUUID", { enumerable: true, get: function () { return CypherFunction_1.randomUUID; } }); | ||
Object.defineProperty(exports, "Function", { enumerable: true, get: function () { return CypherFunction_1.CypherFunction; } }); | ||
var CypherFunction_2 = require("./expressions/functions/CypherFunction"); | ||
Object.defineProperty(exports, "coalesce", { enumerable: true, get: function () { return CypherFunction_2.coalesce; } }); | ||
Object.defineProperty(exports, "point", { enumerable: true, get: function () { return CypherFunction_2.point; } }); | ||
Object.defineProperty(exports, "distance", { enumerable: true, get: function () { return CypherFunction_2.distance; } }); | ||
Object.defineProperty(exports, "pointDistance", { enumerable: true, get: function () { return CypherFunction_2.pointDistance; } }); | ||
Object.defineProperty(exports, "datetime", { enumerable: true, get: function () { return CypherFunction_2.cypherDatetime; } }); | ||
Object.defineProperty(exports, "date", { enumerable: true, get: function () { return CypherFunction_2.cypherDate; } }); | ||
Object.defineProperty(exports, "localtime", { enumerable: true, get: function () { return CypherFunction_2.cypherLocalTime; } }); | ||
Object.defineProperty(exports, "localdatetime", { enumerable: true, get: function () { return CypherFunction_2.cypherLocalDatetime; } }); | ||
Object.defineProperty(exports, "time", { enumerable: true, get: function () { return CypherFunction_2.cypherTime; } }); | ||
Object.defineProperty(exports, "labels", { enumerable: true, get: function () { return CypherFunction_2.labels; } }); | ||
Object.defineProperty(exports, "count", { enumerable: true, get: function () { return CypherFunction_2.count; } }); | ||
Object.defineProperty(exports, "min", { enumerable: true, get: function () { return CypherFunction_2.min; } }); | ||
Object.defineProperty(exports, "max", { enumerable: true, get: function () { return CypherFunction_2.max; } }); | ||
Object.defineProperty(exports, "avg", { enumerable: true, get: function () { return CypherFunction_2.avg; } }); | ||
Object.defineProperty(exports, "sum", { enumerable: true, get: function () { return CypherFunction_2.sum; } }); | ||
Object.defineProperty(exports, "randomUUID", { enumerable: true, get: function () { return CypherFunction_2.randomUUID; } }); | ||
__exportStar(require("./expressions/functions/StringFunctions"), exports); | ||
__exportStar(require("./expressions/functions/ListFunctions"), exports); | ||
@@ -152,0 +155,0 @@ var PredicateFunctions_1 = require("./expressions/functions/PredicateFunctions"); |
import { Param } from "./variables/Param"; | ||
import type { NamedReference, Reference } from "./variables/Reference"; | ||
export declare type EnvPrefix = { | ||
export type EnvPrefix = { | ||
params?: string; | ||
@@ -5,0 +5,0 @@ variables?: string; |
@@ -0,1 +1,2 @@ | ||
import type { Variable } from "../.."; | ||
import type { Expr } from "../../types"; | ||
@@ -7,2 +8,4 @@ import { CypherFunction } from "./CypherFunction"; | ||
export declare function last(expr: Expr): CypherFunction; | ||
/** Reduce a list by executing given expression <https://neo4j.com/docs/cypher-manual/current/functions/list/#functions-reduce> */ | ||
export declare function reduce(accVariable: Variable, defaultValue: Expr, variable: Variable, listExpr: Expr, mapExpr: Expr): CypherFunction; | ||
//# sourceMappingURL=ListFunctions.d.ts.map |
@@ -21,3 +21,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.last = exports.head = exports.collect = exports.size = void 0; | ||
exports.reduce = exports.last = exports.head = exports.collect = exports.size = void 0; | ||
const CypherFunction_1 = require("./CypherFunction"); | ||
@@ -40,2 +40,30 @@ function size(expr) { | ||
exports.last = last; | ||
class ReducerFunction extends CypherFunction_1.CypherFunction { | ||
constructor({ accVariable, defaultValue, variable, listExpr, mapExpr, }) { | ||
super("reduce"); | ||
this.accVariable = accVariable; | ||
this.defaultValue = defaultValue; | ||
this.variable = variable; | ||
this.listExpr = listExpr; | ||
this.mapExpr = mapExpr; | ||
} | ||
getCypher(env) { | ||
const accStr = `${this.accVariable.getCypher(env)} = ${this.defaultValue.getCypher(env)}`; | ||
const variableStr = this.variable.getCypher(env); | ||
const listExprStr = this.listExpr.getCypher(env); | ||
const mapExprStr = this.mapExpr.getCypher(env); | ||
return `${this.name}(${accStr}, ${variableStr} IN ${listExprStr} | ${mapExprStr})`; | ||
} | ||
} | ||
/** Reduce a list by executing given expression <https://neo4j.com/docs/cypher-manual/current/functions/list/#functions-reduce> */ | ||
function reduce(accVariable, defaultValue, variable, listExpr, mapExpr) { | ||
return new ReducerFunction({ | ||
accVariable, | ||
defaultValue, | ||
variable, | ||
listExpr, | ||
mapExpr, | ||
}); | ||
} | ||
exports.reduce = reduce; | ||
//# sourceMappingURL=ListFunctions.js.map |
import { CypherASTNode } from "../../CypherASTNode"; | ||
import type { Predicate } from "../../types"; | ||
declare type BooleanOperator = "AND" | "NOT" | "OR"; | ||
type BooleanOperator = "AND" | "NOT" | "OR"; | ||
export declare abstract class BooleanOp extends CypherASTNode { | ||
@@ -5,0 +5,0 @@ protected operator: BooleanOperator; |
import type { Expr } from "../../types"; | ||
import type { CypherEnvironment } from "../../Environment"; | ||
import { CypherASTNode } from "../../CypherASTNode"; | ||
declare type ComparisonOperator = "=" | "<" | ">" | "<>" | "<=" | ">=" | "IS NULL" | "IS NOT NULL" | "IN" | "CONTAINS" | "STARTS WITH" | "ENDS WITH" | "=~"; | ||
type ComparisonOperator = "=" | "<" | ">" | "<>" | "<=" | ">=" | "IS NULL" | "IS NOT NULL" | "IN" | "CONTAINS" | "STARTS WITH" | "ENDS WITH" | "=~"; | ||
export declare class ComparisonOp extends CypherASTNode { | ||
@@ -6,0 +6,0 @@ private operator; |
import type { Expr } from "../../types"; | ||
import type { CypherEnvironment } from "../../Environment"; | ||
import { CypherASTNode } from "../../CypherASTNode"; | ||
declare type MathOperator = "+" | "-"; | ||
type MathOperator = "+" | "-"; | ||
export declare class MathOp extends CypherASTNode { | ||
@@ -6,0 +6,0 @@ private operator; |
@@ -6,8 +6,8 @@ import type { NodeRef } from "./variables/NodeRef"; | ||
import type { CypherCompilable } from "./types"; | ||
export declare type MatchableElement = NodeRef | RelationshipRef; | ||
declare type ItemOption = { | ||
export type MatchableElement = NodeRef | RelationshipRef; | ||
type ItemOption = { | ||
labels?: boolean; | ||
variable?: boolean; | ||
}; | ||
export declare type MatchPatternOptions = { | ||
export type MatchPatternOptions = { | ||
source?: ItemOption; | ||
@@ -21,4 +21,4 @@ target?: ItemOption; | ||
}; | ||
declare type ParamsRecord = Record<string, Param<any>>; | ||
declare type MatchRelationshipParams = { | ||
type ParamsRecord = Record<string, Param<any>>; | ||
type MatchRelationshipParams = { | ||
source?: ParamsRecord; | ||
@@ -28,3 +28,3 @@ relationship?: ParamsRecord; | ||
}; | ||
export declare type MatchParams<T extends MatchableElement> = T extends NodeRef ? ParamsRecord : MatchRelationshipParams; | ||
export type MatchParams<T extends MatchableElement> = T extends NodeRef ? ParamsRecord : MatchRelationshipParams; | ||
export declare class Pattern<T extends MatchableElement = MatchableElement> implements CypherCompilable { | ||
@@ -31,0 +31,0 @@ readonly matchElement: T; |
import { convertFormat, ConvertFormat } from "./date"; | ||
import type { RunFirstColumn } from "./RunFirstColumn"; | ||
import type { ValidatePredicate } from "./ValidatePredicate"; | ||
export declare type ApocPredicate = ValidatePredicate; | ||
export declare type ApocExpr = RunFirstColumn | ConvertFormat; | ||
export type ApocPredicate = ValidatePredicate; | ||
export type ApocExpr = RunFirstColumn | ConvertFormat; | ||
export { RunFirstColumn } from "./RunFirstColumn"; | ||
@@ -7,0 +7,0 @@ export { ValidatePredicate } from "./ValidatePredicate"; |
@@ -21,10 +21,10 @@ import type { PropertyRef } from "./variables/PropertyRef"; | ||
import type { ApocExpr, ApocPredicate } from "./procedures/apoc/apoc"; | ||
export declare type Operation = BooleanOp | ComparisonOp | MathOp; | ||
export declare type VariableLike = Reference | Literal | PropertyRef; | ||
export declare type Expr = Operation | VariableLike | CypherFunction | Predicate | ListComprehension | PatternComprehension | MapExpr | MapProjection | ListExpr | ApocExpr; | ||
export type Operation = BooleanOp | ComparisonOp | MathOp; | ||
export type VariableLike = Reference | Literal | PropertyRef; | ||
export type Expr = Operation | VariableLike | CypherFunction | Predicate | ListComprehension | PatternComprehension | MapExpr | MapProjection | ListExpr | ApocExpr; | ||
/** Represents a predicate statement (i.e returns a boolean). Note that RawCypher is only added for compatibility */ | ||
export declare type Predicate = BooleanOp | ComparisonOp | RawCypher | Exists | PredicateFunction | ApocPredicate | Literal<boolean> | Case | HasLabel; | ||
export type Predicate = BooleanOp | ComparisonOp | RawCypher | Exists | PredicateFunction | ApocPredicate | Literal<boolean> | Case | HasLabel; | ||
/** Represents a procedure, invocable with the CALL statement */ | ||
export declare type Procedure = ValidatePredicate; | ||
export declare type CypherResult = { | ||
export type Procedure = ValidatePredicate; | ||
export type CypherResult = { | ||
cypher: string; | ||
@@ -31,0 +31,0 @@ params: Record<string, string>; |
import type { CypherCompilable } from "../types"; | ||
declare type LiteralValue = string | number | boolean | null | Array<LiteralValue>; | ||
type LiteralValue = string | number | boolean | null | Array<LiteralValue>; | ||
/** Represents a literal value, it is not a variable */ | ||
@@ -4,0 +4,0 @@ export declare class Literal<T extends LiteralValue = any> implements CypherCompilable { |
@@ -5,3 +5,3 @@ import { HasLabel } from "../expressions/HasLabel"; | ||
import { RelationshipRef } from "./RelationshipRef"; | ||
declare type NodeRefOptions = { | ||
type NodeRefOptions = { | ||
labels?: string[]; | ||
@@ -8,0 +8,0 @@ }; |
import type { NodeRef } from "./NodeRef"; | ||
import { MatchPatternOptions, Pattern } from "../Pattern"; | ||
import { Reference } from "./Reference"; | ||
export declare type RelationshipInput = { | ||
export type RelationshipInput = { | ||
source: NodeRef; | ||
@@ -6,0 +6,0 @@ target: NodeRef; |
{ | ||
"name": "@neo4j/cypher-builder", | ||
"version": "0.1.4", | ||
"version": "0.1.5", | ||
"description": "Neo4j Cypher query builder", | ||
@@ -35,3 +35,3 @@ "exports": "./dist/index.js", | ||
"devDependencies": { | ||
"@types/jest": "29.2.2", | ||
"@types/jest": "29.2.3", | ||
"@types/node": "18.11.5", | ||
@@ -41,4 +41,4 @@ "expect-type": "0.15.0", | ||
"ts-jest": "29.0.3", | ||
"typescript": "4.8.4" | ||
"typescript": "4.9.3" | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
337305
287
4617