From 0019a4e1db88d94c221f6072a54ae3b3c142a7f9 Mon Sep 17 00:00:00 2001 From: Matt Date: Sun, 10 Mar 2019 12:03:53 +0000 Subject: [PATCH] Found a different dom implementation that removes 6MB --- package-lock.json | 4 ++++ package.json | 1 + src/core/operations/HeatmapChart.mjs | 4 ++-- src/core/operations/HexDensityChart.mjs | 4 ++-- src/core/operations/ScatterChart.mjs | 5 +++-- src/core/operations/SeriesChart.mjs | 4 ++-- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index b2311d3b..a1136b70 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9250,6 +9250,10 @@ } } }, + "nodom": { + "version": "github:ptytb/nodom#f041f9f85a6e21adb8e48273e6dd84474c773a01", + "from": "github:ptytb/nodom" + }, "nomnom": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz", diff --git a/package.json b/package.json index f71f7709..2ff2dfbb 100644 --- a/package.json +++ b/package.json @@ -121,6 +121,7 @@ "ngeohash": "^0.6.3", "node-forge": "^0.7.6", "node-md6": "^0.1.0", + "nodom": "github:ptytb/nodom", "notepack.io": "^2.2.0", "nwmatcher": "^1.4.4", "otp": "^0.1.3", diff --git a/src/core/operations/HeatmapChart.mjs b/src/core/operations/HeatmapChart.mjs index eda20fcc..9852a4ad 100644 --- a/src/core/operations/HeatmapChart.mjs +++ b/src/core/operations/HeatmapChart.mjs @@ -5,7 +5,7 @@ */ import * as d3 from "d3"; -import jsdom from "jsdom"; +import * as nodom from "nodom"; import { getScatterValues, RECORD_DELIMITER_OPTIONS, COLOURS, FIELD_DELIMITER_OPTIONS } from "../lib/Charts"; @@ -117,7 +117,7 @@ class HeatmapChart extends Operation { yLabel = headings.y; } - const document = new jsdom.JSDOM().window.document; + const document = new nodom.Document(); let svg = document.createElement("svg"); svg = d3.select(svg) .attr("width", "100%") diff --git a/src/core/operations/HexDensityChart.mjs b/src/core/operations/HexDensityChart.mjs index 56be19c3..dc04bf33 100644 --- a/src/core/operations/HexDensityChart.mjs +++ b/src/core/operations/HexDensityChart.mjs @@ -6,7 +6,7 @@ import * as d3 from "d3"; import * as d3hexbin from "d3-hexbin"; -import jsdom from "jsdom"; +import * as nodom from "nodom"; import { getScatterValues, RECORD_DELIMITER_OPTIONS, COLOURS, FIELD_DELIMITER_OPTIONS } from "../lib/Charts"; import Operation from "../Operation"; @@ -120,7 +120,7 @@ class HexDensityChart extends Operation { yLabel = headings.y; } - const document = new jsdom.JSDOM().window.document; + const document = new nodom.Document(); let svg = document.createElement("svg"); svg = d3.select(svg) .attr("width", "100%") diff --git a/src/core/operations/ScatterChart.mjs b/src/core/operations/ScatterChart.mjs index bdec508a..6898a91e 100644 --- a/src/core/operations/ScatterChart.mjs +++ b/src/core/operations/ScatterChart.mjs @@ -5,7 +5,7 @@ */ import * as d3 from "d3"; -import jsdom from "jsdom"; +import * as nodom from "nodom"; import { getScatterValues, getScatterValuesWithColour, RECORD_DELIMITER_OPTIONS, COLOURS, FIELD_DELIMITER_OPTIONS } from "../lib/Charts"; import Operation from "../Operation"; @@ -101,7 +101,8 @@ class ScatterChart extends Operation { xLabel = headings.x; yLabel = headings.y; } - const document = new jsdom.JSDOM().window.document; + + const document = new nodom.Document(); let svg = document.createElement("svg"); svg = d3.select(svg) .attr("width", "100%") diff --git a/src/core/operations/SeriesChart.mjs b/src/core/operations/SeriesChart.mjs index fbdca826..548aa7f2 100644 --- a/src/core/operations/SeriesChart.mjs +++ b/src/core/operations/SeriesChart.mjs @@ -5,7 +5,7 @@ */ import * as d3 from "d3"; -import jsdom from "jsdom"; +import * as nodom from "nodom"; import { getSeriesValues, RECORD_DELIMITER_OPTIONS, FIELD_DELIMITER_OPTIONS } from "../lib/Charts"; import Operation from "../Operation"; @@ -79,7 +79,7 @@ class SeriesChart extends Operation { allSeriesHeight = Object.keys(series).length * (interSeriesPadding + seriesHeight), svgHeight = allSeriesHeight + xAxisHeight + interSeriesPadding; - const document = new jsdom.JSDOM().window.document; + const document = new nodom.Document(); let svg = document.createElement("svg"); svg = d3.select(svg) .attr("width", "100%")