public transformJSON()

in src/transformer/transformer.ts [30:54]


  public transformJSON(
    template: string,
    jsonArray: object[],
    validationSchema?: object
  ): GraphInfo {
    let vertices: Vertex[] = [];
    let edges: Edge[] = [];

    const compiledTemplate = this.getCompiledTemplate(template);

    jsonArray.forEach(doc => {
      const transformedDoc = compiledTemplate(doc);
      const result: GraphInfo = jsonlint.parse(transformedDoc);
      if (validationSchema) {
        this.validateJSON(result, validationSchema);
      }

      vertices = vertices.concat(result.vertices);
      edges = edges.concat(result.edges);
    });

    vertices = GraphHelper.removeDuplicateVertexes(vertices);
    edges = GraphHelper.removeDuplicateEdges(edges);
    return { vertices, edges };
  }