35 lines
1.1 KiB
Java
35 lines
1.1 KiB
Java
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var util_1 = require("@antv/util");
|
|
var data_set_1 = require("../data-set");
|
|
var DEFAULT_OPTIONS = {
|
|
nodes: function (d) {
|
|
// optional
|
|
return d.nodes;
|
|
},
|
|
edges: function (d) {
|
|
// optional
|
|
return d.edges;
|
|
},
|
|
};
|
|
function connector(data, options, dataView) {
|
|
options = util_1.assign({}, DEFAULT_OPTIONS, options);
|
|
dataView.dataType = data_set_1.DataSet.CONSTANTS.GRAPH;
|
|
var nodes = options.nodes, edges = options.edges;
|
|
if (nodes && !util_1.isFunction(nodes)) {
|
|
throw new TypeError('Invalid nodes: must be a function!');
|
|
}
|
|
if (edges && !util_1.isFunction(edges)) {
|
|
throw new TypeError('Invalid edges: must be a function!');
|
|
}
|
|
// @ts-ignore
|
|
dataView.rows = dataView.graph = {
|
|
nodes: nodes(data),
|
|
edges: edges(data),
|
|
};
|
|
util_1.assign(dataView, dataView.graph);
|
|
return dataView.rows;
|
|
}
|
|
data_set_1.DataSet.registerConnector('graph', connector);
|
|
data_set_1.DataSet.registerConnector('diagram', connector);
|