vega-lite
Version:
Vega-Lite is a concise high-level language for interactive visualization.
37 lines (30 loc) • 825 B
text/typescript
import {GraticuleTransform as VgGraticuleTransform} from 'vega';
import {GraticuleParams} from '../../data.js';
import {hash} from '../../util.js';
import {DataFlowNode} from './dataflow.js';
export class GraticuleNode extends DataFlowNode {
public clone() {
return new GraticuleNode(null, this.params);
}
constructor(
parent: DataFlowNode,
private params: true | GraticuleParams,
) {
super(parent);
}
public dependentFields() {
return new Set<string>();
}
public producedFields(): undefined {
return undefined; // there should never be a node before graticule
}
public hash() {
return `Graticule ${hash(this.params)}`;
}
public assemble(): VgGraticuleTransform {
return {
type: 'graticule',
...(this.params === true ? {} : this.params),
};
}
}