Spaces:
Running
Running
| import "../core/array"; | |
| import "../core/document"; | |
| import "../core/subclass"; | |
| import "../core/vendor"; | |
| function d3_selection(groups) { | |
| d3_subclass(groups, d3_selectionPrototype); | |
| return groups; | |
| } | |
| var d3_select = function(s, n) { return n.querySelector(s); }, | |
| d3_selectAll = function(s, n) { return n.querySelectorAll(s); }, | |
| d3_selectMatches = function(n, s) { | |
| var d3_selectMatcher = n.matches || n[d3_vendorSymbol(n, "matchesSelector")]; | |
| d3_selectMatches = function(n, s) { | |
| return d3_selectMatcher.call(n, s); | |
| }; | |
| return d3_selectMatches(n, s); | |
| }; | |
| // Prefer Sizzle, if available. | |
| if (typeof Sizzle === "function") { | |
| d3_select = function(s, n) { return Sizzle(s, n)[0] || null; }; | |
| d3_selectAll = Sizzle; | |
| d3_selectMatches = Sizzle.matchesSelector; | |
| } | |
| d3.selection = function() { | |
| return d3.select(d3_document.documentElement); | |
| }; | |
| var d3_selectionPrototype = d3.selection.prototype = []; | |
| import "select"; | |
| import "selectAll"; | |
| import "attr"; | |
| import "classed"; | |
| import "style"; | |
| import "property"; | |
| import "text"; | |
| import "html"; | |
| import "append"; | |
| import "insert"; | |
| import "remove"; | |
| import "data"; | |
| import "datum"; | |
| import "filter"; | |
| import "order"; | |
| import "sort"; | |
| import "on"; | |
| import "each"; | |
| import "call"; | |
| import "empty"; | |
| import "node"; | |
| import "size"; | |
| import "enter"; | |
| // TODO fast singleton implementation? | |
| d3.select = function(node) { | |
| var group; | |
| if (typeof node === "string") { | |
| group = [d3_select(node, d3_document)]; | |
| group.parentNode = d3_document.documentElement; | |
| } else { | |
| group = [node]; | |
| group.parentNode = d3_documentElement(node); | |
| } | |
| return d3_selection([group]); | |
| }; | |
| d3.selectAll = function(nodes) { | |
| var group; | |
| if (typeof nodes === "string") { | |
| group = d3_array(d3_selectAll(nodes, d3_document)); | |
| group.parentNode = d3_document.documentElement; | |
| } else { | |
| group = d3_array(nodes); | |
| group.parentNode = null; | |
| } | |
| return d3_selection([group]); | |
| }; | |