MCPcopy Index your code
hub / github.com/d3-node/d3-node / D3Node

Function D3Node

src/index.js:19–50  ·  view source on GitHub ↗
({ d3Module = d3, selector = '', container = '', styles = '', svgStyles = '', canvasModule = '' } = {})

Source from the content-addressed store, hash-verified

17}
18
19export function D3Node ({ d3Module = d3, selector = '', container = '', styles = '', svgStyles = '', canvasModule = '' } = {}) {
20 // deprecates props
21 if (svgStyles && !styles) { // deprecated svgStyles option
22 console.warn('WARNING: svgStyles is deprecated, please use styles instead !!')
23 styles = svgStyles
24 }
25
26 // auto-new instance, so we always have 'this'
27 if (!(this instanceof D3Node)) {
28 return new D3Node({ d3Module, selector, container, styles, svgStyles, canvasModule })
29 }
30
31 // setup DOM
32 let jsDom = new JSDOM()
33 if (container) {
34 jsDom = new JSDOM(container)
35 }
36 const document = jsDom.window.document
37
38 // setup d3 selection
39 let d3Element = d3Module.select(document.body)
40 if (selector) {
41 d3Element = d3Element.select(selector)
42 }
43
44 this.options = { d3Module, selector, container, styles, canvasModule }
45 this.jsDom = jsDom
46 this.document = document
47 this.window = document.defaultView
48 this.d3Element = d3Element
49 this.d3 = d3Module
50}
51
52D3Node.prototype.createSVG = function (width, height, attrs) {
53 const svg = this.d3Element.append('svg')

Callers 1

index.jsFile · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected