semiotic 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/semiotic.js CHANGED
@@ -10,7 +10,7 @@ var d3Array = require('d3-array');
10
10
  var d3Scale = require('d3-scale');
11
11
  var d3Brush = require('d3-brush');
12
12
  var d3Selection = require('d3-selection');
13
- var d3Voronoi = require('d3-voronoi');
13
+ var d3Delaunay = require('d3-delaunay');
14
14
  var d3Interpolate = require('d3-interpolate');
15
15
  var d3Contour = require('d3-contour');
16
16
  var d3Hexbin = require('d3-hexbin');
@@ -18,7 +18,6 @@ var regression = require('regression');
18
18
  var d3Hierarchy = require('d3-hierarchy');
19
19
  var d3Polygon = require('d3-polygon');
20
20
  var Offset = require('polygon-offset');
21
- var d3Collection = require('d3-collection');
22
21
  var d3Force = require('d3-force');
23
22
  var pathBounds = require('svg-path-bounding-box');
24
23
  var d3Glyphedge = require('d3-glyphedge');
@@ -1061,7 +1060,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
1061
1060
  function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
1062
1061
  step((generator = generator.apply(thisArg, _arguments || [])).next());
1063
1062
  });
1064
- }
1063
+ }
1064
+
1065
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1066
+ var e = new Error(message);
1067
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1068
+ };
1065
1069
 
1066
1070
  const findFirstAccessorValue = (accessorArray, data) => {
1067
1071
  for (let i = 0; i < accessorArray.length; i++) {
@@ -1856,32 +1860,28 @@ const calculateOverlay = (props, voronoiHover) => {
1856
1860
  }
1857
1861
  }
1858
1862
  }
1859
- const voronoiXExtent = d3Array.extent(voronoiDataset.map((d) => d.voronoiX));
1860
- const voronoiYExtent = d3Array.extent(voronoiDataset.map((d) => d.voronoiY));
1863
+ let voronoiXExtent = d3Array.extent(voronoiDataset.map((d) => d.voronoiX));
1864
+ let voronoiYExtent = d3Array.extent(voronoiDataset.map((d) => d.voronoiY));
1865
+ if (voronoiXExtent[0] == null || voronoiYExtent == null) {
1866
+ voronoiXExtent = [0, 0];
1867
+ voronoiYExtent = [0, 0];
1868
+ }
1861
1869
  const voronoiExtent = [
1862
- [
1863
- Math.min(voronoiXExtent[0] - 5, -interactionOverflow.left),
1864
- Math.min(voronoiYExtent[0] - 5, -interactionOverflow.top)
1865
- ],
1866
- [
1867
- Math.max(voronoiXExtent[1] + 5, size[0] + interactionOverflow.right),
1868
- Math.max(voronoiYExtent[1] + 5, size[1] + interactionOverflow.bottom)
1869
- ]
1870
+ Math.min(voronoiXExtent[0] - 5, -interactionOverflow.left),
1871
+ Math.min(voronoiYExtent[0] - 5, -interactionOverflow.top),
1872
+ Math.max(voronoiXExtent[1] + 5, size[0] + interactionOverflow.right),
1873
+ Math.max(voronoiYExtent[1] + 5, size[1] + interactionOverflow.bottom)
1870
1874
  ];
1871
- const voronoiDiagram = d3Voronoi.voronoi()
1872
- .extent(voronoiExtent)
1873
- .x((d) => d.voronoiX)
1874
- .y((d) => d.voronoiY);
1875
- const voronoiData = voronoiDiagram.polygons(voronoiDataset);
1876
- voronoiPaths = voronoiData.map((d, i) => {
1875
+ const delaunay = d3Delaunay.Delaunay.from(voronoiDataset, (d) => d.voronoiX, (d) => d.voronoiY);
1876
+ const voronoi = delaunay.voronoi(voronoiExtent);
1877
+ voronoiPaths = voronoiDataset.map((d, i) => {
1877
1878
  let clipPath = null;
1878
1879
  if (advancedSettings.voronoiClipping) {
1879
1880
  const circleSize = advancedSettings.voronoiClipping === true
1880
1881
  ? 50
1881
1882
  : advancedSettings.voronoiClipping;
1882
- const correspondingD = voronoiDataset[i];
1883
1883
  clipPath = (React__namespace.createElement("clipPath", { id: `voronoi-${i}` },
1884
- React__namespace.createElement("circle", { r: circleSize, cx: correspondingD.voronoiX, cy: correspondingD.voronoiY })));
1884
+ React__namespace.createElement("circle", { r: circleSize, cx: d.voronoiX, cy: d.voronoiY })));
1885
1885
  }
1886
1886
  return (React__namespace.createElement("g", { key: `voronoi-${i}` },
1887
1887
  React__namespace.createElement("path", { onClick: (e) => {
@@ -1892,7 +1892,7 @@ const calculateOverlay = (props, voronoiHover) => {
1892
1892
  changeVoronoi(voronoiHover, voronoiDataset[i], hoverAnnotation, customHoverBehavior, points, e);
1893
1893
  }, onMouseLeave: (e) => {
1894
1894
  changeVoronoi(voronoiHover, undefined, undefined, customHoverBehavior, undefined, e);
1895
- }, key: `interactionVoronoi${i}`, d: `M${d.join("L")}Z`, style: Object.assign({ fillOpacity: 0 }, pointerStyle), clipPath: `url(#voronoi-${i})` }),
1895
+ }, key: `interactionVoronoi${i}`, d: voronoi.renderCell(i), style: Object.assign({ fillOpacity: 0 }, pointerStyle), clipPath: `url(#voronoi-${i})` }),
1896
1896
  clipPath));
1897
1897
  }, window);
1898
1898
  return voronoiPaths;
@@ -4160,16 +4160,19 @@ function bucketizedRenderingFn({ data, type, renderMode, eventListenersGenerator
4160
4160
  translate = [0, 0];
4161
4161
  }
4162
4162
  if (type.axis && type.type === "histogram") {
4163
- renderedSummaryMarks.push(createSummaryAxis({
4164
- summary,
4165
- summaryI,
4166
- axisSettings: type.axis,
4167
- axisCreator,
4168
- projection,
4169
- actualMax,
4170
- adjustedSize,
4171
- columnWidth
4172
- }));
4163
+ renderedSummaryMarks.push({
4164
+ type: "svg-only-mark",
4165
+ Mark: createSummaryAxis({
4166
+ summary,
4167
+ summaryI,
4168
+ axisSettings: type.axis,
4169
+ axisCreator,
4170
+ projection,
4171
+ actualMax,
4172
+ adjustedSize,
4173
+ columnWidth
4174
+ })
4175
+ });
4173
4176
  }
4174
4177
  mappedBars.points.forEach((d) => {
4175
4178
  d.x += translate[0];
@@ -9546,16 +9549,32 @@ const calculateOrdinalFrame = (currentProps, currentState) => {
9546
9549
  ]);
9547
9550
  }
9548
9551
  else {
9549
- const positiveData = allData.filter((d) => d.value >= 0);
9550
- const negativeData = allData.filter((d) => d.value < 0);
9551
- const nestedPositiveData = d3Collection.nest()
9552
- .key((d) => d.column)
9553
- .rollup((leaves) => d3Array.sum(leaves, (d) => d.value))
9554
- .entries(positiveData);
9555
- const nestedNegativeData = d3Collection.nest()
9556
- .key((d) => d.column)
9557
- .rollup((leaves) => d3Array.sum(leaves, (d) => d.value))
9558
- .entries(negativeData);
9552
+ const nestedPositiveData = [];
9553
+ const nestedNegativeData = [];
9554
+ const positiveDataKeys = {};
9555
+ const negativeDataKeys = {};
9556
+ for (const datum of allData) {
9557
+ if (datum.value >= 0) {
9558
+ if (!positiveDataKeys[datum.column]) {
9559
+ positiveDataKeys[datum.column] = {
9560
+ column: datum.column,
9561
+ value: 0
9562
+ };
9563
+ nestedPositiveData.push(positiveDataKeys[datum.column]);
9564
+ }
9565
+ positiveDataKeys[datum.column].value += datum.value;
9566
+ }
9567
+ else {
9568
+ if (!negativeDataKeys[datum.column]) {
9569
+ negativeDataKeys[datum.column] = {
9570
+ column: datum.column,
9571
+ value: 0
9572
+ };
9573
+ nestedNegativeData.push(negativeDataKeys[datum.column]);
9574
+ }
9575
+ negativeDataKeys[datum.column].value += datum.value;
9576
+ }
9577
+ }
9559
9578
  const positiveAnnotations = annotationsForExtent.filter((d) => d > 0);
9560
9579
  rExtent = [
9561
9580
  0,
@@ -9605,12 +9624,12 @@ const calculateOrdinalFrame = (currentProps, currentState) => {
9605
9624
  rExtent = [rExtent[1], rExtent[0]];
9606
9625
  }
9607
9626
  const nestedPieces = {};
9608
- d3Collection.nest()
9609
- .key((d) => d.column)
9610
- .entries(allData)
9611
- .forEach((d) => {
9612
- nestedPieces[d.key] = d.values;
9613
- });
9627
+ for (const datum of allData) {
9628
+ if (!nestedPieces[datum.column]) {
9629
+ nestedPieces[datum.column] = [];
9630
+ }
9631
+ nestedPieces[datum.column].push(datum);
9632
+ }
9614
9633
  if (oSort !== undefined) {
9615
9634
  oExtent = oExtent.sort((a, b) => oSort(a, b, nestedPieces[a].map((d) => d.data), nestedPieces[b].map((d) => d.data)));
9616
9635
  oScale.domain(oExtent);
@@ -7,7 +7,7 @@ import { sum, extent as extent$1, quantile, histogram, max, min } from 'd3-array
7
7
  import { scaleLinear, scaleOrdinal, scaleBand } from 'd3-scale';
8
8
  import { brushX, brushY, brush } from 'd3-brush';
9
9
  import { select } from 'd3-selection';
10
- import { voronoi } from 'd3-voronoi';
10
+ import { Delaunay } from 'd3-delaunay';
11
11
  import { interpolateNumber } from 'd3-interpolate';
12
12
  import { contourDensity } from 'd3-contour';
13
13
  import { hexbin } from 'd3-hexbin';
@@ -15,7 +15,6 @@ import regression from 'regression';
15
15
  import { packEnclose, hierarchy, tree, pack, cluster, treemap, partition } from 'd3-hierarchy';
16
16
  import { polygonHull } from 'd3-polygon';
17
17
  import Offset from 'polygon-offset';
18
- import { nest } from 'd3-collection';
19
18
  import { forceSimulation, forceY, forceX, forceCollide, forceLink, forceManyBody } from 'd3-force';
20
19
  import pathBounds from 'svg-path-bounding-box';
21
20
  import { d } from 'd3-glyphedge';
@@ -1030,7 +1029,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
1030
1029
  function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
1031
1030
  step((generator = generator.apply(thisArg, _arguments || [])).next());
1032
1031
  });
1033
- }
1032
+ }
1033
+
1034
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1035
+ var e = new Error(message);
1036
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1037
+ };
1034
1038
 
1035
1039
  const findFirstAccessorValue = (accessorArray, data) => {
1036
1040
  for (let i = 0; i < accessorArray.length; i++) {
@@ -1825,32 +1829,28 @@ const calculateOverlay = (props, voronoiHover) => {
1825
1829
  }
1826
1830
  }
1827
1831
  }
1828
- const voronoiXExtent = extent$1(voronoiDataset.map((d) => d.voronoiX));
1829
- const voronoiYExtent = extent$1(voronoiDataset.map((d) => d.voronoiY));
1832
+ let voronoiXExtent = extent$1(voronoiDataset.map((d) => d.voronoiX));
1833
+ let voronoiYExtent = extent$1(voronoiDataset.map((d) => d.voronoiY));
1834
+ if (voronoiXExtent[0] == null || voronoiYExtent == null) {
1835
+ voronoiXExtent = [0, 0];
1836
+ voronoiYExtent = [0, 0];
1837
+ }
1830
1838
  const voronoiExtent = [
1831
- [
1832
- Math.min(voronoiXExtent[0] - 5, -interactionOverflow.left),
1833
- Math.min(voronoiYExtent[0] - 5, -interactionOverflow.top)
1834
- ],
1835
- [
1836
- Math.max(voronoiXExtent[1] + 5, size[0] + interactionOverflow.right),
1837
- Math.max(voronoiYExtent[1] + 5, size[1] + interactionOverflow.bottom)
1838
- ]
1839
+ Math.min(voronoiXExtent[0] - 5, -interactionOverflow.left),
1840
+ Math.min(voronoiYExtent[0] - 5, -interactionOverflow.top),
1841
+ Math.max(voronoiXExtent[1] + 5, size[0] + interactionOverflow.right),
1842
+ Math.max(voronoiYExtent[1] + 5, size[1] + interactionOverflow.bottom)
1839
1843
  ];
1840
- const voronoiDiagram = voronoi()
1841
- .extent(voronoiExtent)
1842
- .x((d) => d.voronoiX)
1843
- .y((d) => d.voronoiY);
1844
- const voronoiData = voronoiDiagram.polygons(voronoiDataset);
1845
- voronoiPaths = voronoiData.map((d, i) => {
1844
+ const delaunay = Delaunay.from(voronoiDataset, (d) => d.voronoiX, (d) => d.voronoiY);
1845
+ const voronoi = delaunay.voronoi(voronoiExtent);
1846
+ voronoiPaths = voronoiDataset.map((d, i) => {
1846
1847
  let clipPath = null;
1847
1848
  if (advancedSettings.voronoiClipping) {
1848
1849
  const circleSize = advancedSettings.voronoiClipping === true
1849
1850
  ? 50
1850
1851
  : advancedSettings.voronoiClipping;
1851
- const correspondingD = voronoiDataset[i];
1852
1852
  clipPath = (React.createElement("clipPath", { id: `voronoi-${i}` },
1853
- React.createElement("circle", { r: circleSize, cx: correspondingD.voronoiX, cy: correspondingD.voronoiY })));
1853
+ React.createElement("circle", { r: circleSize, cx: d.voronoiX, cy: d.voronoiY })));
1854
1854
  }
1855
1855
  return (React.createElement("g", { key: `voronoi-${i}` },
1856
1856
  React.createElement("path", { onClick: (e) => {
@@ -1861,7 +1861,7 @@ const calculateOverlay = (props, voronoiHover) => {
1861
1861
  changeVoronoi(voronoiHover, voronoiDataset[i], hoverAnnotation, customHoverBehavior, points, e);
1862
1862
  }, onMouseLeave: (e) => {
1863
1863
  changeVoronoi(voronoiHover, undefined, undefined, customHoverBehavior, undefined, e);
1864
- }, key: `interactionVoronoi${i}`, d: `M${d.join("L")}Z`, style: Object.assign({ fillOpacity: 0 }, pointerStyle), clipPath: `url(#voronoi-${i})` }),
1864
+ }, key: `interactionVoronoi${i}`, d: voronoi.renderCell(i), style: Object.assign({ fillOpacity: 0 }, pointerStyle), clipPath: `url(#voronoi-${i})` }),
1865
1865
  clipPath));
1866
1866
  }, window);
1867
1867
  return voronoiPaths;
@@ -4129,16 +4129,19 @@ function bucketizedRenderingFn({ data, type, renderMode, eventListenersGenerator
4129
4129
  translate = [0, 0];
4130
4130
  }
4131
4131
  if (type.axis && type.type === "histogram") {
4132
- renderedSummaryMarks.push(createSummaryAxis({
4133
- summary,
4134
- summaryI,
4135
- axisSettings: type.axis,
4136
- axisCreator,
4137
- projection,
4138
- actualMax,
4139
- adjustedSize,
4140
- columnWidth
4141
- }));
4132
+ renderedSummaryMarks.push({
4133
+ type: "svg-only-mark",
4134
+ Mark: createSummaryAxis({
4135
+ summary,
4136
+ summaryI,
4137
+ axisSettings: type.axis,
4138
+ axisCreator,
4139
+ projection,
4140
+ actualMax,
4141
+ adjustedSize,
4142
+ columnWidth
4143
+ })
4144
+ });
4142
4145
  }
4143
4146
  mappedBars.points.forEach((d) => {
4144
4147
  d.x += translate[0];
@@ -9515,16 +9518,32 @@ const calculateOrdinalFrame = (currentProps, currentState) => {
9515
9518
  ]);
9516
9519
  }
9517
9520
  else {
9518
- const positiveData = allData.filter((d) => d.value >= 0);
9519
- const negativeData = allData.filter((d) => d.value < 0);
9520
- const nestedPositiveData = nest()
9521
- .key((d) => d.column)
9522
- .rollup((leaves) => sum(leaves, (d) => d.value))
9523
- .entries(positiveData);
9524
- const nestedNegativeData = nest()
9525
- .key((d) => d.column)
9526
- .rollup((leaves) => sum(leaves, (d) => d.value))
9527
- .entries(negativeData);
9521
+ const nestedPositiveData = [];
9522
+ const nestedNegativeData = [];
9523
+ const positiveDataKeys = {};
9524
+ const negativeDataKeys = {};
9525
+ for (const datum of allData) {
9526
+ if (datum.value >= 0) {
9527
+ if (!positiveDataKeys[datum.column]) {
9528
+ positiveDataKeys[datum.column] = {
9529
+ column: datum.column,
9530
+ value: 0
9531
+ };
9532
+ nestedPositiveData.push(positiveDataKeys[datum.column]);
9533
+ }
9534
+ positiveDataKeys[datum.column].value += datum.value;
9535
+ }
9536
+ else {
9537
+ if (!negativeDataKeys[datum.column]) {
9538
+ negativeDataKeys[datum.column] = {
9539
+ column: datum.column,
9540
+ value: 0
9541
+ };
9542
+ nestedNegativeData.push(negativeDataKeys[datum.column]);
9543
+ }
9544
+ negativeDataKeys[datum.column].value += datum.value;
9545
+ }
9546
+ }
9528
9547
  const positiveAnnotations = annotationsForExtent.filter((d) => d > 0);
9529
9548
  rExtent = [
9530
9549
  0,
@@ -9574,12 +9593,12 @@ const calculateOrdinalFrame = (currentProps, currentState) => {
9574
9593
  rExtent = [rExtent[1], rExtent[0]];
9575
9594
  }
9576
9595
  const nestedPieces = {};
9577
- nest()
9578
- .key((d) => d.column)
9579
- .entries(allData)
9580
- .forEach((d) => {
9581
- nestedPieces[d.key] = d.values;
9582
- });
9596
+ for (const datum of allData) {
9597
+ if (!nestedPieces[datum.column]) {
9598
+ nestedPieces[datum.column] = [];
9599
+ }
9600
+ nestedPieces[datum.column].push(datum);
9601
+ }
9583
9602
  if (oSort !== undefined) {
9584
9603
  oExtent = oExtent.sort((a, b) => oSort(a, b, nestedPieces[a].map((d) => d.data), nestedPieces[b].map((d) => d.data)));
9585
9604
  oScale.domain(oExtent);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semiotic",
3
- "version": "2.0.0",
3
+ "version": "2.0.2",
4
4
  "description": "The semiotic JavaScript data visualization framework",
5
5
  "main": "dist/semiotic.js",
6
6
  "module": "dist/semiotic.module.js",
@@ -60,17 +60,16 @@
60
60
  ],
61
61
  "license": "Apache-2.0",
62
62
  "devDependencies": {
63
- "@babel/core": "^7.16.5",
64
- "@babel/preset-env": "^7.16.5",
65
- "@babel/preset-react": "^7.16.5",
66
- "@babel/preset-typescript": "^7.16.5",
67
- "@material-ui/core": "^4.8.1",
63
+ "@babel/core": "^7.24.4",
64
+ "@babel/preset-env": "^7.24.4",
65
+ "@babel/preset-react": "^7.24.1",
66
+ "@babel/preset-typescript": "^7.24.1",
68
67
  "@mdx-js/react": "^1.6.22",
69
68
  "@parcel/transformer-inline-string": "^2.8.2",
70
69
  "@parcel/transformer-mdx": "^2.8.2",
71
70
  "@playwright/test": "^1.17.1",
72
- "@testing-library/jest-dom": "^5.16.5",
73
- "@testing-library/react": "^13.4.0",
71
+ "@testing-library/jest-dom": "^5.17.0",
72
+ "@testing-library/react": "^14.3.0",
74
73
  "@testing-library/user-event": "^14.4.3",
75
74
  "@types/d3-scale": "^2.1.1",
76
75
  "@types/node": "^13.7.4",
@@ -80,14 +79,14 @@
80
79
  "@vx/pattern": "0.0.143",
81
80
  "@wojtekmaj/enzyme-adapter-react-17": "^0.6.6",
82
81
  "babel-eslint": "^7.2.3",
83
- "babel-jest": "^27.4.5",
82
+ "babel-jest": "^27.5.1",
84
83
  "classnames": "2.2.5",
85
84
  "conventional-changelog-cli": "1.1.1",
86
85
  "conventional-recommended-bump": "0.3.0",
87
86
  "d3-dsv": "1.0.5",
88
87
  "d3-flextree-v4": "^1.0.1",
89
88
  "d3-random": "1.0.1",
90
- "d3-sankey": "0.7.1",
89
+ "d3-sankey": "0.12.3",
91
90
  "dagre": "^0.8.2",
92
91
  "dentist": "1.0.3",
93
92
  "enzyme": "3.1.0",
@@ -129,29 +128,28 @@
129
128
  "react-dom": "^18.1.0"
130
129
  },
131
130
  "dependencies": {
132
- "d3-array": "^1.2.0",
133
- "d3-brush": "^2.1.0",
134
- "d3-chord": "^1.0.4",
135
- "d3-collection": "^1.0.1",
131
+ "d3-array": "3.2.4",
132
+ "d3-brush": "3.0.0",
133
+ "d3-chord": "3.0.1",
136
134
  "d3-contour": "^1.1.1",
137
- "d3-force": "^1.0.2",
135
+ "d3-delaunay": "^6.0.4",
136
+ "d3-force": "3.0.0",
138
137
  "d3-glyphedge": "^1.2.0",
139
138
  "d3-hexbin": "^0.2.2",
140
- "d3-hierarchy": "^1.1.3",
141
- "d3-interpolate": "^1.1.5",
139
+ "d3-hierarchy": "3.1.2",
140
+ "d3-interpolate": "3.0.1",
142
141
  "d3-path-arrows": "^0.4.0",
143
- "d3-polygon": "^1.0.5",
144
- "d3-sankey-circular": "0.25.0",
145
- "d3-scale": "^1.0.3",
146
- "d3-selection": "2",
147
- "d3-shape": "^1.3.5",
148
- "d3-voronoi": "^1.0.2",
142
+ "d3-polygon": "3.0.1",
143
+ "d3-sankey-circular": "0.34.0",
144
+ "d3-scale": "4.0.2",
145
+ "d3-selection": "3.0.0",
146
+ "d3-shape": "3.2.0",
149
147
  "dequal": "^2.0.3",
150
148
  "labella": "1.1.4",
151
149
  "memoize-one": "^5.1.1",
152
150
  "object-assign": "4.1.1",
153
151
  "polygon-offset": "0.3.1",
154
- "react-annotation": "3.0.0-beta.4",
152
+ "react-annotation": "3.0.0-beta.5",
155
153
  "regression": "^2.0.1",
156
154
  "svg-path-bounding-box": "1.0.4"
157
155
  },
@@ -1,35 +0,0 @@
1
- import AnnotationLayer from "./AnnotationLayer";
2
- import DividedLine from "./DividedLine";
3
- import XYFrame from "./XYFrame";
4
- import OrdinalFrame from "./OrdinalFrame";
5
- import MinimapXYFrame from "./MinimapXYFrame";
6
- import MiniMap from "./MiniMap";
7
- import Axis from "./Axis";
8
- import Legend from "./Legend";
9
- import Annotation from "./Annotation";
10
- import Brush from "./Brush";
11
- import InteractionLayer from "./InteractionLayer";
12
- import VisualizationLayer from "./VisualizationLayer";
13
- import NetworkFrame from "./NetworkFrame";
14
- import { funnelize } from "./svg/lineDrawing";
15
- import { calculateDataExtent } from "./data/dataFunctions";
16
- import FacetController from "./FacetController";
17
- import { ResponsiveNetworkFrame } from "./ResponsiveNetworkFrame";
18
- import { ResponsiveMinimapXYFrame } from "./ResponsiveMinimapXYFrame";
19
- import { ResponsiveXYFrame } from "./ResponsiveXYFrame";
20
- import { ResponsiveOrdinalFrame } from "./ResponsiveOrdinalFrame";
21
- import { SparkXYFrame } from "./SparkXYFrame";
22
- import { SparkOrdinalFrame } from "./SparkOrdinalFrame";
23
- import { SparkNetworkFrame } from "./SparkNetworkFrame";
24
- import Mark from "../components/Mark/Mark";
25
- import { hexbinning, heatmapping } from "./svg/areaDrawing";
26
- import { nodesEdgesFromHierarchy } from "./processing/network";
27
- export { AnnotationLayer, DividedLine, XYFrame, MinimapXYFrame, MiniMap, Brush, Axis, InteractionLayer, VisualizationLayer, OrdinalFrame, Annotation, NetworkFrame, ResponsiveMinimapXYFrame, ResponsiveOrdinalFrame, ResponsiveNetworkFrame, ResponsiveXYFrame, SparkOrdinalFrame, SparkNetworkFrame, SparkXYFrame, Legend, Mark, funnelize, calculateDataExtent, FacetController, hexbinning, heatmapping, nodesEdgesFromHierarchy };
28
- export { NodeType, EdgeType, GraphSettingsType, NetworkSettingsType, NetworkFrameState, NetworkFrameProps } from "./types/networkTypes";
29
- export { AnnotationType, CustomHoverType, AnnotationTypes, AnnotationHandling, AnnotationProps, AxisProps, AxisGeneratingFunction } from "./types/annotationTypes";
30
- export { ContextType } from "./types/canvasTypes";
31
- export { GenericObject, MarginType, ProjectionTypes, ExtentType, ProjectedPoint, PieceLayoutType, ProjectedLine, ProjectedSummary, RoughType, CanvasPostProcessTypes, ExtentSettingsType, accessorType, AccessorFnType, BasicLineTypes, LineTypeSettings, BasicSummaryTypes, SummaryTypeSettings, RawLine, RawSummary, RawPoint, CustomAreaMarkProps, ProjectedBin, GenericAccessor, VizLayerTypes, RenderPipelineType, OrdinalSummaryTypes, OrdinalSummaryTypeSettings, AxisSummaryTypeSettings, GeneralFrameProps, GeneralFrameState } from "./types/generalTypes";
32
- export { AdvancedInteractionSettings, Interactivity, InteractionLayerProps, VoronoiEntryType, BaseColumnType, InteractionLayerState } from "./types/interactionTypes";
33
- export { SupportedLegendGlyphs, ItemType, LegendItem, LegendGroup, LegendProps } from "./types/legendTypes";
34
- export { OExtentObject, PieceTypes, PieceTypeSettings, ProjectedOrdinalSummary, OrdinalFrameProps, OrdinalFrameState } from "./types/ordinalTypes";
35
- export { XYFrameProps, AnnotatedSettingsProps, XYFrameState, SummaryLayoutType } from "./types/xyTypes";