From daab355f54d75333cdbc442568f8b22b321ba215 Mon Sep 17 00:00:00 2001 From: chgennar <56695749+chgennar@users.noreply.github.com> Date: Wed, 12 Oct 2022 21:15:39 +0000 Subject: [PATCH 1/2] test --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 4d5dc9e3..3a4cd5a1 100644 --- a/package.json +++ b/package.json @@ -57,10 +57,10 @@ }, "dependencies": { "@types/awesomplete": "^1.1.8", - "@types/d3": "^4.13.0", + "@types/d3": "^7.4.0", "awesomplete": "^1.1.2", "azure-maps-control": "^2.0.26", - "d3": "^4.13.0", + "d3": "^7.6.1", "d3-interpolate-path": "^1.1.1", "moment": "^2.27.0", "moment-timezone": "^0.5.31", From bedf5101896dcf4fbeb8c7ac339950011f2b92ba Mon Sep 17 00:00:00 2001 From: chgennar <56695749+chgennar@users.noreply.github.com> Date: Fri, 21 Oct 2022 02:50:20 +0000 Subject: [PATCH 2/2] Current progress updating D3 --- package-lock.json | 638 ++++++++++-------- package.json | 4 +- .../AvailabilityChart/AvailabilityChart.ts | 20 +- .../Components/ColorPicker/ColorPicker.ts | 36 +- .../DateTimeButtonRange.ts | 10 +- .../DateTimeButtonSingle.ts | 12 +- .../Components/LineChart/LineChart.ts | 102 +-- src/UXClient/Components/PieChart/PieChart.ts | 6 +- .../Components/ScatterPlot/ScatterPlot.ts | 21 +- .../SingleDateTimePicker.ts | 20 +- src/UXClient/Utils/Utils.ts | 4 - 11 files changed, 462 insertions(+), 411 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ada03c3..aadab8fe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "tsiclient", - "version": "1.4.24", + "version": "1.4.21", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -186,20 +186,22 @@ "dev": true }, "@types/d3": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-4.13.0.tgz", - "integrity": "sha512-L7C+aOIl+z/e7pPBvRXxA9EZ8a5RIZSq4UnTgdjCnypYV3bPI1wpx81snC8pE1zB4SZQC/WK4noZUHzWAABfBA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", + "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", "requires": { "@types/d3-array": "*", "@types/d3-axis": "*", "@types/d3-brush": "*", "@types/d3-chord": "*", - "@types/d3-collection": "*", "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", "@types/d3-dispatch": "*", "@types/d3-drag": "*", "@types/d3-dsv": "*", "@types/d3-ease": "*", + "@types/d3-fetch": "*", "@types/d3-force": "*", "@types/d3-format": "*", "@types/d3-geo": "*", @@ -208,196 +210,198 @@ "@types/d3-path": "*", "@types/d3-polygon": "*", "@types/d3-quadtree": "*", - "@types/d3-queue": "*", "@types/d3-random": "*", - "@types/d3-request": "*", - "@types/d3-scale": "^1", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", "@types/d3-selection": "*", "@types/d3-shape": "*", "@types/d3-time": "*", "@types/d3-time-format": "*", "@types/d3-timer": "*", "@types/d3-transition": "*", - "@types/d3-voronoi": "*", "@types/d3-zoom": "*" } }, "@types/d3-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-1.2.1.tgz", - "integrity": "sha512-YBaAfimGdWE4nDuoGVKsH89/dkz2hWZ0i8qC+xxqmqi+XJ/aXiRF0jPtzXmN7VdkpVjy1xuDmM5/m1FNuB6VWA==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.3.tgz", + "integrity": "sha512-Reoy+pKnvsksN0lQUlcH6dOGjRZ/3WRwXR//m+/8lt1BXeI4xyaUZoqULNjyXXRuh0Mj4LNpkCvhUpQlY3X5xQ==" }, "@types/d3-axis": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-1.0.9.tgz", - "integrity": "sha512-fNUnI2a0F3xiE/nGrTdDpZG4sdcRIB4X59p9jgY8O7RQiKrVqyb433YCCYSqVID4CVyoq5v3bSFliUEk0FOMsw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.1.tgz", + "integrity": "sha512-zji/iIbdd49g9WN0aIsGcwcTBUkgLsCSwB+uH+LPVDAiKWENMtI3cJEWt+7/YYwelMoZmbBfzA3qCdrZ2XFNnw==", "requires": { "@types/d3-selection": "*" } }, "@types/d3-brush": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-1.0.7.tgz", - "integrity": "sha1-BcMEQPTVN/0j+Xaw5sS6IjAB70U=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.1.tgz", + "integrity": "sha512-B532DozsiTuQMHu2YChdZU0qsFJSio3Q6jmBYGYNp3gMDzBmuFFgPt9qKA4VYuLZMp4qc6eX7IUFUEsvHiXZAw==", "requires": { "@types/d3-selection": "*" } }, "@types/d3-chord": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-1.0.6.tgz", - "integrity": "sha1-BYnrl6MZH07a8Xt73kmEYokM4ew=" - }, - "@types/d3-collection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-collection/-/d3-collection-1.0.6.tgz", - "integrity": "sha512-UHBvaU2wT5GlJN6rRVQm42211uAyZtp7m0jpQFuMuX7hTuivc0tcF0cjx5Ny5eQkhIolEyKwWgvJexw4e8g4+A==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.1.tgz", + "integrity": "sha512-eQfcxIHrg7V++W8Qxn6QkqBNBokyhdWSAS73AbkbMzvLQmVVBviknoz2SRS/ZJdIOmhcmmdCRE/NFOm28Z1AMw==" }, "@types/d3-color": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-1.0.5.tgz", - "integrity": "sha1-ytdV8Pxt57cPpuXgivqB70wiSN4=" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==" + }, + "@types/d3-contour": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.1.tgz", + "integrity": "sha512-C3zfBrhHZvrpAAK3YXqLWVAGo87A4SvJ83Q/zVJ8rFWJdKejUnDYaWZPkA8K84kb2vDA/g90LTQAz7etXcgoQQ==", + "requires": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==" }, "@types/d3-dispatch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-1.0.5.tgz", - "integrity": "sha1-8fkYe1OOywUVdWnY3C9w37BPG1I=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-NhxMn3bAkqhjoxabVJWKryhnZXXYYVQxaBnbANu0O94+O/nX9qSjrA1P1jbAQJxJf+VC72TxDX/YJcKue5bRqw==" }, "@types/d3-drag": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-1.2.0.tgz", - "integrity": "sha512-AePmm0sXj0Tpl0uQWvwmbAf1QR3yCy9aRhjJ9mRDDSZlHBdY0SCpUtdZC9uG9Q+pyHT/dEt1R2FT/sj+5k/bVA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.1.tgz", + "integrity": "sha512-o1Va7bLwwk6h03+nSM8dpaGEYnoIG19P0lKqlic8Un36ymh9NSkNFX1yiXMKNMx8rJ0Kfnn2eovuFaL6Jvj0zA==", "requires": { "@types/d3-selection": "*" } }, "@types/d3-dsv": { - "version": "1.0.31", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-1.0.31.tgz", - "integrity": "sha512-UCAVZdwd2NkrbkF1lZu9vzTlmUENRRrPCubyhDPlG8Ye1B8Xr2PNvk/Tp8tMm6sPoWZWagri6/P9H+t7WqkGDg==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.0.tgz", + "integrity": "sha512-o0/7RlMl9p5n6FQDptuJVMxDf/7EDEv2SYEO/CwdG2tr1hTfUVi0Iavkk2ax+VpaQ/1jVhpnj5rq1nj8vwhn2A==" }, "@types/d3-ease": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-1.0.7.tgz", - "integrity": "sha1-k6MBhovp4VBh89RDQ7GrP4rLbwk=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", + "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==" + }, + "@types/d3-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.1.tgz", + "integrity": "sha512-toZJNOwrOIqz7Oh6Q7l2zkaNfXkfR7mFSJvGvlD/Ciq/+SQ39d5gynHJZ/0fjt83ec3WL7+u3ssqIijQtBISsw==", + "requires": { + "@types/d3-dsv": "*" + } }, "@types/d3-force": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-1.1.0.tgz", - "integrity": "sha512-a39Uu/ltLaMpj6K0elEB1oAqhx9rlTB5X/O75uTUqyTW2CfjhPXg6hFsX1lF8oeMc29kqGJZ4g9Pf6mET25bVw==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.3.tgz", + "integrity": "sha512-z8GteGVfkWJMKsx6hwC3SiTSLspL98VNpmvLpEFJQpZPq6xpA1I8HNBDNSpukfK0Vb0l64zGFhzunLgEAcBWSA==" }, "@types/d3-format": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-1.2.1.tgz", - "integrity": "sha512-dXhA9jzCbzu6Va8ZVUQ60nu6jqA5vhPhKGR4nY3lDYfjT05GyKEKuEhfwTaSTybWczY4nLEkzv9wLQCQd5+3cA==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==" }, "@types/d3-geo": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-1.9.4.tgz", - "integrity": "sha512-DoigJorMGGIG9K4n980zz5g1XnvhDhNy7rk/0O8KCpFPpUZ9hyAgN0ZHXhbtIelxhJhMZxwMRe2soxx/Fhx4Hg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.2.tgz", + "integrity": "sha512-DbqK7MLYA8LpyHQfv6Klz0426bQEf7bRTvhMy44sNGVyZoWn//B0c+Qbeg8Osi2Obdc9BLLXYAKpyWege2/7LQ==", "requires": { "@types/geojson": "*" } }, "@types/d3-hierarchy": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-1.1.0.tgz", - "integrity": "sha1-UPHuBShAY4A1y91KyrH8NHCQWQc=" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.0.tgz", + "integrity": "sha512-g+sey7qrCa3UbsQlMZZBOHROkFqx7KZKvUpRzI/tAp/8erZWpYq7FgNKvYwebi2LaEiVs1klhUfd3WCThxmmWQ==" }, "@types/d3-interpolate": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-1.1.6.tgz", - "integrity": "sha1-ZAQbFcnAMsNI2hsiuqvFn6TRYTY=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", "requires": { "@types/d3-color": "*" } }, "@types/d3-path": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-1.0.6.tgz", - "integrity": "sha512-YHW4cs+wOU9gFUzudjJs9TkrB/8GOgKhq32ZyNaZ2rzZjOhkqG486sGr9XSh4C91CcgIg1FRGoDaN29Ropx9nw==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", + "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==" }, "@types/d3-polygon": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-1.0.5.tgz", - "integrity": "sha1-Na1U7YTDnX6fElK2U1vmAL5srOI=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", + "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==" }, "@types/d3-quadtree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-1.0.5.tgz", - "integrity": "sha1-HOHmWerkUw3wyxJ/KX8XQaNnqC4=" - }, - "@types/d3-queue": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/d3-queue/-/d3-queue-3.0.5.tgz", - "integrity": "sha1-Pky+Kv9h22oLK4xIACmeTsasyFA=" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", + "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==" }, "@types/d3-random": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-1.1.0.tgz", - "integrity": "sha1-LdCPEVnHBxknDkp8g0r4XIuI0sM=" - }, - "@types/d3-request": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-request/-/d3-request-1.0.2.tgz", - "integrity": "sha1-2524FU9HgWWEcGxub3Ar5m8i9L4=", - "requires": { - "@types/d3-dsv": "*" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==" }, "@types/d3-scale": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-1.0.12.tgz", - "integrity": "sha512-2Z3YsHdWRBuUiqKHcnWVF1ffuALFn+k74QEECUCpzabD/5Olxvs/aJM4eG3QTe5n9yiWK432kOEpinGvO1wDfA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-Yk4htunhPAwN0XGlIwArRomOjdoBFXC3+kCxK2Ubg7I9shQlVSJy/pG/Ht5ASN+gdMIalpk8TJ5xV74jFsetLA==", "requires": { "@types/d3-time": "*" } }, + "@types/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==" + }, "@types/d3-selection": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-1.3.0.tgz", - "integrity": "sha512-1SJhi3kTk/SHHIE6XkHuHU2REYkbSOjkQuo3HT71FOTs8/tjeGcvtXMsX4N3kU1UE1nVG+A5pg7TSjuJ4zUN3A==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.3.tgz", + "integrity": "sha512-Mw5cf6nlW1MlefpD9zrshZ+DAWL4IQ5LnWfRheW6xwsdaWOb6IRRu2H7XPAQcyXEx1D7XQWgdoKR83ui1/HlEA==" }, "@types/d3-shape": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.2.2.tgz", - "integrity": "sha512-Ydksrces8J5WP/NXhZ/CcDx/XZZ8b7MDX+u6WGQXwEWfmimJn9eYHiD7QR4BLe3zBiAOQmmiGAwRBKUDp5zb1g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.0.tgz", + "integrity": "sha512-jYIYxFFA9vrJ8Hd4Se83YI6XF+gzDL1aC5DCsldai4XYYiVNdhtpGbA/GM6iyQ8ayhSp3a148LY34hy7A4TxZA==", "requires": { "@types/d3-path": "*" } }, "@types/d3-time": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-1.0.7.tgz", - "integrity": "sha512-X5ZQYiJIM38XygNwld4gZ++Vtw2ftgo3KOfZOY4n/sCudUxclxf/3THBvuG8UqSV+EQ0ezYjT5eyvcrrmixOWA==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==" }, "@types/d3-time-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.1.0.tgz", - "integrity": "sha512-/myT3I7EwlukNOX2xVdMzb8FRgNzRMpsZddwst9Ld/VFe6LyJyRp0s32l/V9XoUzk+Gqu56F/oGk6507+8BxrA==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", + "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==" }, "@types/d3-timer": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-1.0.6.tgz", - "integrity": "sha1-eG1OIHMa3wOvLF32yG/ilmf+Qps=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", + "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==" }, "@types/d3-transition": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-1.1.1.tgz", - "integrity": "sha512-GHTghl0YYB8gGgbyKxVLHyAp9Na0HqsX2U7M0u0lGw4IdfEaslooykweZ8fDHW13T+KZeZAuzhbmqBZVFO+6kg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.2.tgz", + "integrity": "sha512-jo5o/Rf+/u6uerJ/963Dc39NI16FQzqwOc54bwvksGAdVfvDrqDpVeq95bEvPtBwLCVZutAEyAtmSyEMxN7vxQ==", "requires": { "@types/d3-selection": "*" } }, - "@types/d3-voronoi": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@types/d3-voronoi/-/d3-voronoi-1.1.7.tgz", - "integrity": "sha512-/dHFLK5jhXTb/W4XEQcFydVk8qlIAo85G3r7+N2fkBFw190l0R1GQ8C1VPeXBb2GfSU5GbT2hjlnE7i7UY5Gvg==" - }, "@types/d3-zoom": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-1.7.0.tgz", - "integrity": "sha512-eIivt2ehMUXqS0guuVzRSMr5RGhO958g9EKxIJv3Z23suPnX4VQI9k1TC/bLuwKq0IWp9a1bEEcIy+PNJv9BtA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.1.tgz", + "integrity": "sha512-7s5L9TjfqIYQmQQEUcpMAcBOahem7TRoSO/+Gkz02GbMVuULiZzjF2BOdw291dbO2aNon4m2OdFsRGaCq2caLQ==", "requires": { "@types/d3-interpolate": "*", "@types/d3-selection": "*" @@ -416,9 +420,9 @@ "dev": true }, "@types/geojson": { - "version": "7946.0.2", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.2.tgz", - "integrity": "sha512-JuRe9eeID7XvL7viIcFqIAAXDLfyRcImIWE/XjBIhrUZjxX5z4fLcF3QXS9zYnvIn8mmtW/7OxDV3XC8QMb7OA==" + "version": "7946.0.10", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", + "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==" }, "@types/glob": { "version": "7.1.1", @@ -1922,9 +1926,9 @@ } }, "commander": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.0.tgz", - "integrity": "sha512-7B1ilBwtYSbetCgTY1NJFg+gVpestg0fdA1MhC1Vs4ssyfSXnCAjFr+QcQM9/RedXC0EaUx1sG8Smgw2VfgKEg==" + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" }, "commondir": { "version": "1.0.1", @@ -2598,140 +2602,175 @@ "dev": true }, "d3": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/d3/-/d3-4.13.0.tgz", - "integrity": "sha512-l8c4+0SldjVKLaE2WG++EQlqD7mh/dmQjvi2L2lKPadAVC+TbJC4ci7Uk9bRi+To0+ansgsS0iWfPjD7DBy+FQ==", - "requires": { - "d3-array": "1.2.1", - "d3-axis": "1.0.8", - "d3-brush": "1.0.4", - "d3-chord": "1.0.4", - "d3-collection": "1.0.4", - "d3-color": "1.0.3", - "d3-dispatch": "1.0.3", - "d3-drag": "1.2.1", - "d3-dsv": "1.0.8", - "d3-ease": "1.0.3", - "d3-force": "1.1.0", - "d3-format": "1.2.2", - "d3-geo": "1.9.1", - "d3-hierarchy": "1.1.5", - "d3-interpolate": "1.1.6", - "d3-path": "1.0.5", - "d3-polygon": "1.0.3", - "d3-quadtree": "1.0.3", - "d3-queue": "3.0.7", - "d3-random": "1.1.0", - "d3-request": "1.0.6", - "d3-scale": "1.0.7", - "d3-selection": "1.3.0", - "d3-shape": "1.2.0", - "d3-time": "1.0.8", - "d3-time-format": "2.1.1", - "d3-timer": "1.0.7", - "d3-transition": "1.1.1", - "d3-voronoi": "1.1.2", - "d3-zoom": "1.7.1" + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/d3/-/d3-7.6.1.tgz", + "integrity": "sha512-txMTdIHFbcpLx+8a0IFhZsbp+PfBBPt8yfbmukZTQFroKuFqIwqswF0qE5JXWefylaAVpSXFoKm3yP+jpNLFLw==", + "requires": { + "d3-array": "3", + "d3-axis": "3", + "d3-brush": "3", + "d3-chord": "3", + "d3-color": "3", + "d3-contour": "4", + "d3-delaunay": "6", + "d3-dispatch": "3", + "d3-drag": "3", + "d3-dsv": "3", + "d3-ease": "3", + "d3-fetch": "3", + "d3-force": "3", + "d3-format": "3", + "d3-geo": "3", + "d3-hierarchy": "3", + "d3-interpolate": "3", + "d3-path": "3", + "d3-polygon": "3", + "d3-quadtree": "3", + "d3-random": "3", + "d3-scale": "4", + "d3-scale-chromatic": "3", + "d3-selection": "3", + "d3-shape": "3", + "d3-time": "3", + "d3-time-format": "4", + "d3-timer": "3", + "d3-transition": "3", + "d3-zoom": "3" + }, + "dependencies": { + "d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==" + }, + "d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "requires": { + "d3-color": "1 - 3" + } + } } }, "d3-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.1.tgz", - "integrity": "sha512-CyINJQ0SOUHojDdFDH4JEM0552vCR1utGyLHegJHyYH0JyCpSeTPxi4OBqHMA2jJZq4NH782LtaJWBImqI/HBw==" + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.0.tgz", + "integrity": "sha512-3yXFQo0oG3QCxbF06rMPFyGRMGJNS7NvsV1+2joOjbBE+9xvWQ8+GcMJAjRCzw06zQ3/arXeJgbPYcjUCuC+3g==", + "requires": { + "internmap": "1 - 2" + } }, "d3-axis": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-1.0.8.tgz", - "integrity": "sha1-MacFoLU15ldZ3hQXOjGTMTfxjvo=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", + "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==" }, "d3-brush": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-1.0.4.tgz", - "integrity": "sha1-AMLyOAGfJPbAoZSibUGhUw/+e8Q=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", + "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", "requires": { - "d3-dispatch": "1", - "d3-drag": "1", - "d3-interpolate": "1", - "d3-selection": "1", - "d3-transition": "1" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "3", + "d3-transition": "3" } }, "d3-chord": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-1.0.4.tgz", - "integrity": "sha1-fexPC6iG9xP+ERxF92NBT290yiw=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", + "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", "requires": { - "d3-array": "1", - "d3-path": "1" + "d3-path": "1 - 3" } }, - "d3-collection": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.4.tgz", - "integrity": "sha1-NC39EoN8kJdPM/HMCnha6lcNzcI=" - }, "d3-color": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.0.3.tgz", "integrity": "sha1-vHZD/KjlOoNH4vva/6I2eWtYUJs=" }, + "d3-contour": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.0.tgz", + "integrity": "sha512-7aQo0QHUTu/Ko3cP9YK9yUTxtoDEiDGwnBHyLxG5M4vqlBkO/uixMRele3nfsfj6UXOcuReVpVXzAboGraYIJw==", + "requires": { + "d3-array": "^3.2.0" + } + }, + "d3-delaunay": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.2.tgz", + "integrity": "sha512-IMLNldruDQScrcfT+MWnazhHbDJhcRJyOEBAJfwQnHle1RPh6WDuLvxNArUju2VSMSUuKlY5BGHRJ2cYyoFLQQ==", + "requires": { + "delaunator": "5" + } + }, "d3-dispatch": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.3.tgz", - "integrity": "sha1-RuFJHqqbWMNY/OW+TovtYm54cfg=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==" }, "d3-drag": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.1.tgz", - "integrity": "sha512-Cg8/K2rTtzxzrb0fmnYOUeZHvwa4PHzwXOLZZPwtEs2SKLLKLXeYwZKBB+DlOxUvFmarOnmt//cU4+3US2lyyQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", "requires": { - "d3-dispatch": "1", - "d3-selection": "1" + "d3-dispatch": "1 - 3", + "d3-selection": "3" } }, "d3-dsv": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.0.8.tgz", - "integrity": "sha512-IVCJpQ+YGe3qu6odkPQI0KPqfxkhbP/oM1XhhE/DFiYmcXKfCRub4KXyiuehV1d4drjWVXHUWx4gHqhdZb6n/A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", "requires": { - "commander": "2", - "iconv-lite": "0.4", + "commander": "7", + "iconv-lite": "0.6", "rw": "1" } }, "d3-ease": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.3.tgz", - "integrity": "sha1-aL+8NJM4o4DETYrMT7wzBKotjA4=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==" + }, + "d3-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", + "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", + "requires": { + "d3-dsv": "1 - 3" + } }, "d3-force": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.1.0.tgz", - "integrity": "sha512-2HVQz3/VCQs0QeRNZTYb7GxoUCeb6bOzMp/cGcLa87awY9ZsPvXOGeZm0iaGBjXic6I1ysKwMn+g+5jSAdzwcg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", + "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", "requires": { - "d3-collection": "1", - "d3-dispatch": "1", - "d3-quadtree": "1", - "d3-timer": "1" + "d3-dispatch": "1 - 3", + "d3-quadtree": "1 - 3", + "d3-timer": "1 - 3" } }, "d3-format": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.2.tgz", - "integrity": "sha512-zH9CfF/3C8zUI47nsiKfD0+AGDEuM8LwBIP7pBVpyR4l/sKkZqITmMtxRp04rwBrlshIZ17XeFAaovN3++wzkw==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==" }, "d3-geo": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.9.1.tgz", - "integrity": "sha512-l9wL/cEQkyZQYXw3xbmLsH3eQ5ij+icNfo4r0GrLa5rOCZR/e/3am45IQ0FvQ5uMsv+77zBRunLc9ufTWSQYFA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.0.1.tgz", + "integrity": "sha512-Wt23xBych5tSy9IYAM1FR2rWIBFWa52B/oF/GYe5zbdHrg08FU8+BuI6X4PvTwPDdqdAdq04fuWJpELtsaEjeA==", "requires": { - "d3-array": "1" + "d3-array": "2.5.0 - 3" } }, "d3-hierarchy": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-1.1.5.tgz", - "integrity": "sha1-ochFxC+Eoga88cAcAQmOpN2qeiY=" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==" }, "d3-interpolate": { "version": "1.1.6", @@ -2750,114 +2789,112 @@ } }, "d3-path": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.5.tgz", - "integrity": "sha1-JB6xhJvZ6egCHA0KeZ+KDo5EF2Q=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.0.1.tgz", + "integrity": "sha512-gq6gZom9AFZby0YLduxT1qmrp4xpBA1YZr19OI717WIdKE2OM5ETq5qrHLb301IgxhLwcuxvGZVLeeWc/k1I6w==" }, "d3-polygon": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-1.0.3.tgz", - "integrity": "sha1-FoiOkCZGCTPysXllKtN4Ik04LGI=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", + "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==" }, "d3-quadtree": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.3.tgz", - "integrity": "sha1-rHmH4+I/6AWpkPKOG1DTj8uCJDg=" - }, - "d3-queue": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/d3-queue/-/d3-queue-3.0.7.tgz", - "integrity": "sha1-yTouVLQXwJWRKdfXP2z31Ckudhg=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", + "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==" }, "d3-random": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-1.1.0.tgz", - "integrity": "sha1-ZkLlBsb6OmSFldKyRpeIqNElKdM=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==" }, - "d3-request": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-request/-/d3-request-1.0.6.tgz", - "integrity": "sha512-FJj8ySY6GYuAJHZMaCQ83xEYE4KbkPkmxZ3Hu6zA1xxG2GD+z6P+Lyp+zjdsHf0xEbp2xcluDI50rCS855EQ6w==", + "d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", "requires": { - "d3-collection": "1", - "d3-dispatch": "1", - "d3-dsv": "1", - "xmlhttprequest": "1" + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "dependencies": { + "d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "requires": { + "d3-color": "1 - 3" + } + } } }, - "d3-scale": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", - "integrity": "sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw==", + "d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==", "requires": { - "d3-array": "^1.2.0", - "d3-collection": "1", - "d3-color": "1", - "d3-format": "1", - "d3-interpolate": "1", - "d3-time": "1", - "d3-time-format": "2" + "d3-color": "1 - 3", + "d3-interpolate": "1 - 3" } }, "d3-selection": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.3.0.tgz", - "integrity": "sha512-qgpUOg9tl5CirdqESUAu0t9MU/t3O9klYfGfyKsXEmhyxyzLpzpeh08gaxBUTQw1uXIOkr/30Ut2YRjSSxlmHA==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==" }, "d3-shape": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.2.0.tgz", - "integrity": "sha1-RdAVOPBkuv0F6j1tLLdI/YxB93c=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.1.0.tgz", + "integrity": "sha512-tGDh1Muf8kWjEDT/LswZJ8WF85yDZLvVJpYU9Nq+8+yW1Z5enxrmXOhTArlkaElU+CTn0OTVNli+/i+HP45QEQ==", "requires": { - "d3-path": "1" + "d3-path": "1 - 3" } }, "d3-time": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.8.tgz", - "integrity": "sha512-YRZkNhphZh3KcnBfitvF3c6E0JOFGikHZ4YqD+Lzv83ZHn1/u6yGenRU1m+KAk9J1GnZMnKcrtfvSktlA1DXNQ==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-zmV3lRnlaLI08y9IMRXSDshQb5Nj77smnfpnd2LrBa/2K281Jijactokeak14QacHs/kKq0AQ121nidNYlarbQ==", + "requires": { + "d3-array": "2 - 3" + } }, "d3-time-format": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.1.tgz", - "integrity": "sha512-8kAkymq2WMfzW7e+s/IUNAtN/y3gZXGRrdGfo6R8NKPAA85UBTxZg5E61bR6nLwjPjj4d3zywSQe1CkYLPFyrw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", "requires": { - "d3-time": "1" + "d3-time": "1 - 3" } }, "d3-timer": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.7.tgz", - "integrity": "sha512-vMZXR88XujmG/L5oB96NNKH5lCWwiLM/S2HyyAQLcjWJCloK5shxta4CwOFYLZoY3AWX73v8Lgv4cCAdWtRmOA==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==" }, "d3-transition": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.1.1.tgz", - "integrity": "sha512-xeg8oggyQ+y5eb4J13iDgKIjUcEfIOZs2BqV/eEmXm2twx80wTzJ4tB4vaZ5BKfz7XsI/DFmQL5me6O27/5ykQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", "requires": { - "d3-color": "1", - "d3-dispatch": "1", - "d3-ease": "1", - "d3-interpolate": "1", - "d3-selection": "^1.1.0", - "d3-timer": "1" + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" } }, - "d3-voronoi": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/d3-voronoi/-/d3-voronoi-1.1.2.tgz", - "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" - }, "d3-zoom": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.7.1.tgz", - "integrity": "sha512-sZHQ55DGq5BZBFGnRshUT8tm2sfhPHFnOlmPbbwTkAoPeVdRTkB4Xsf9GCY0TSHrTD8PeJPZGmP/TpGicwJDJQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", "requires": { - "d3-dispatch": "1", - "d3-drag": "1", - "d3-interpolate": "1", - "d3-selection": "1", - "d3-transition": "1" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" } }, "dashdash": { @@ -3010,6 +3047,14 @@ } } }, + "delaunator": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.0.tgz", + "integrity": "sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==", + "requires": { + "robust-predicates": "^3.0.0" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -4522,9 +4567,12 @@ "dev": true }, "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } }, "icss-replace-symbols": { "version": "1.1.0", @@ -4664,6 +4712,11 @@ "ipaddr.js": "^1.9.0" } }, + "internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==" + }, "interpret": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", @@ -7765,6 +7818,11 @@ "inherits": "^2.0.1" } }, + "robust-predicates": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.1.tgz", + "integrity": "sha512-ndEIpszUHiG4HtDsQLeIuMvRsDnn8c8rYStabochtUeCvfuvNptb5TUbVD68LRAILPX7p9nqQGh4xJgn3EHS/g==" + }, "rollup": { "version": "2.26.11", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.26.11.tgz", @@ -8354,7 +8412,7 @@ "rw": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q=" + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" }, "safe-buffer": { "version": "5.1.1", @@ -8386,8 +8444,7 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass-graph": { "version": "2.2.5", @@ -11518,11 +11575,6 @@ "async-limiter": "~1.0.0" } }, - "xmlhttprequest": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", - "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/package.json b/package.json index 3a4cd5a1..e447bf14 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "tsiclient", "main": "tsiclient.js", "description": "", - "version": "1.4.24", + "version": "1.4.21", "types": "tsiclient.d.ts", "repository": { "type": "git", @@ -31,7 +31,7 @@ "css-loader": "^3.4.2", "file-loader": "^1.1.11", "mini-css-extract-plugin": "^0.4.5", - "node-sass": "^4.14.1", + "node-sass": "^4.13.1", "optimize-css-assets-webpack-plugin": "^5.0.4", "postcss-url": "^8.0.0", "rollup": "^2.26.11", diff --git a/src/UXClient/Components/AvailabilityChart/AvailabilityChart.ts b/src/UXClient/Components/AvailabilityChart/AvailabilityChart.ts index 2993075b..66968626 100644 --- a/src/UXClient/Components/AvailabilityChart/AvailabilityChart.ts +++ b/src/UXClient/Components/AvailabilityChart/AvailabilityChart.ts @@ -54,7 +54,7 @@ class AvailabilityChart extends ChartComponent{ return totalTimeRange / maxZoomFactor; } - private zoom (direction: string, xPos: number) { + private zoom (event: any, direction: string, xPos: number) { if (this.chartOptions.isCompact) return; var range = Math.max(this.getMinZoomedRange(), (this.zoomedToMillis - this.zoomedFromMillis)); @@ -82,7 +82,7 @@ class AvailabilityChart extends ChartComponent{ this.sparkLineChart.setBrushStartTime(new Date(this.zoomedFromMillis)); this.sparkLineChart.setBrush(); this.timePickerLineChart.drawBrushRange(); - d3.event.preventDefault && d3.event.preventDefault(); + event.preventDefault && event.preventDefault(); } private setChartOptions (chartOptions) { this.chartOptions.setOptions({ ...chartOptions, ...{ @@ -285,10 +285,10 @@ class AvailabilityChart extends ChartComponent{ this.sparkLineChart.setBrush(); var self = this; - this.timePickerChart.select(".brushElem").on("wheel.zoom", function (d) { - let direction = d3.event.deltaY > 0 ? 'out' : 'in'; - let xPos = (d3.mouse(this)[0]); - self.zoom(direction, xPos); + this.timePickerChart.select(".brushElem").on("wheel.zoom", function (event , d) { + let direction = event.deltaY > 0 ? 'out' : 'in'; + let xPos = (d3.pointer(event)[0]); + self.zoom(event, direction, xPos); }); if (!this.chartOptions.isCompact) { this.buildZoomButtons(); @@ -311,15 +311,15 @@ class AvailabilityChart extends ChartComponent{ .attr("class", "tsi-zoomButton tsi-zoomButtonIn") .attr('aria-label', this.getString('A line chart zoom in')) .attr('title', this.getString('zoom in')) - .on("click", () => { - this.zoom("in", midpoint); + .on("click", (event) => { + this.zoom(event, "in", midpoint); }); buttonsDiv.append("button") .attr("class", "tsi-zoomButton tsi-zoomButtonOut") .attr('aria-label', this.getString('A line chart zoom out')) .attr('title', this.getString('zoom out')) - .on("click", () => { - this.zoom("out", midpoint); + .on("click", (event) => { + this.zoom(event, "out", midpoint); }); } diff --git a/src/UXClient/Components/ColorPicker/ColorPicker.ts b/src/UXClient/Components/ColorPicker/ColorPicker.ts index 62c4ef8a..cd9dafcf 100644 --- a/src/UXClient/Components/ColorPicker/ColorPicker.ts +++ b/src/UXClient/Components/ColorPicker/ColorPicker.ts @@ -41,11 +41,11 @@ class ColorPicker extends Component{ .attr("title", this.getString('Select color')) .attr("aria-label", (this.selectedColor ? this.selectedColor : this.getString('No color')) + ' ' + this.getString('Select color')) .attr("aria-controls", `tsi-colorGrid_${this.componentId}`) - .on('click', () => { + .on('click', (event) => { if (this.isColorGridVisible) { this.hideColorGrid(true); } else { - this.chartOptions.onClick(d3.event); this.showColorGrid(); + this.chartOptions.onClick(event); this.showColorGrid(); } }); if (this.selectedColor) { @@ -68,33 +68,33 @@ class ColorPicker extends Component{ .attr("aria-label", c) .attr("aria-selected", c === this.selectedColor) .style("background-color", c) - .on('click', () => { - d3.event.preventDefault(); - d3.event.stopPropagation(); + .on('click', (event) => { + event.preventDefault(); + event.stopPropagation(); this.chartOptions.onSelect(c); this.hideColorGrid(true); this.setSelectedColor(c, gridItem); }) - .on('keydown', () => { - if (d3.event.keyCode === KeyCodes.Tab && !d3.event.shiftKey && idx === this.chartOptions.colors.length - 1) { // tab - d3.event.preventDefault(); + .on('keydown', (event) => { + if (event.keyCode === KeyCodes.Tab && !event.shiftKey && idx === this.chartOptions.colors.length - 1) { // tab + event.preventDefault(); this.colorPickerElem.selectAll(".tsi-colorItem").nodes()[0].focus(); - } else if (d3.event.keyCode === KeyCodes.Enter) { - d3.event.preventDefault(); - d3.event.stopPropagation(); + } else if (event.keyCode === KeyCodes.Enter) { + event.preventDefault(); + event.stopPropagation(); this.chartOptions.onSelect(c); this.hideColorGrid(true); this.setSelectedColor(c, gridItem); - } else if (d3.event.keyCode === KeyCodes.Esc) { - d3.event.preventDefault(); - d3.event.stopPropagation(); + } else if (event.keyCode === KeyCodes.Esc) { + event.preventDefault(); + event.stopPropagation(); this.hideColorGrid(true); } }); }); - d3.select("html").on("click." + this.componentId, () => { - if (this.colorPickerElem.select(".tsi-colorPickerButton").filter(Utils.equalToEventTarget).empty() && - this.colorPickerElem.select(".tsi-colorPickerButton").selectAll("*").filter(Utils.equalToEventTarget).empty() && - this.colorPickerElem.selectAll(".tsi-colorGrid").filter(Utils.equalToEventTarget).empty()) { + d3.select("html").on("click." + this.componentId, (event) => { + if (this.colorPickerElem.select(".tsi-colorPickerButton").filter(el => el == event.target).empty() && + this.colorPickerElem.select(".tsi-colorPickerButton").selectAll("*").filter(el => el == event.target).empty() && + this.colorPickerElem.selectAll(".tsi-colorGrid").filter(el => el == event.target).empty()) { this.hideColorGrid(); } }); diff --git a/src/UXClient/Components/DateTimeButtonRange/DateTimeButtonRange.ts b/src/UXClient/Components/DateTimeButtonRange/DateTimeButtonRange.ts index 893063c1..2d654d81 100644 --- a/src/UXClient/Components/DateTimeButtonRange/DateTimeButtonRange.ts +++ b/src/UXClient/Components/DateTimeButtonRange/DateTimeButtonRange.ts @@ -51,12 +51,12 @@ class DateTimeButtonRange extends DateTimeButton { let targetElement = d3.select(this.renderTarget) var dateTimeTextChildren = (targetElement.select(".tsi-dateTimeContainer")).selectAll("*"); - d3.select("html").on("click." + Utils.guid(), () => { + d3.select("html").on("click." + Utils.guid(), (event) => { let pickerContainerChildren = this.dateTimePickerContainer.selectAll("*"); - var outside = dateTimeTextChildren.filter(Utils.equalToEventTarget).empty() - && targetElement.selectAll(".tsi-dateTimeContainer").filter(Utils.equalToEventTarget).empty() - && targetElement.selectAll(".tsi-dateTimeButton").filter(Utils.equalToEventTarget).empty(); - var inClickTarget = pickerContainerChildren.filter(Utils.equalToEventTarget).empty(); + var outside = dateTimeTextChildren.filter(el => el == event.target).empty() + && targetElement.selectAll(".tsi-dateTimeContainer").filter(el => el == event.target).empty() + && targetElement.selectAll(".tsi-dateTimeButton").filter(el => el == event.target).empty(); + var inClickTarget = pickerContainerChildren.filter(el => el == event.target).empty(); if (outside && inClickTarget && (this.dateTimePickerContainer.style('display') !== 'none')) { this.onClose(); } diff --git a/src/UXClient/Components/DateTimeButtonSingle/DateTimeButtonSingle.ts b/src/UXClient/Components/DateTimeButtonSingle/DateTimeButtonSingle.ts index 39f7690c..3d960f1a 100644 --- a/src/UXClient/Components/DateTimeButtonSingle/DateTimeButtonSingle.ts +++ b/src/UXClient/Components/DateTimeButtonSingle/DateTimeButtonSingle.ts @@ -37,13 +37,13 @@ class DateTimeButtonSingle extends DateTimeButton { let targetElement = d3.select(this.renderTarget); var dateTimeTextChildren = (targetElement.select(".tsi-dateTimePickerContainer")).selectAll("*"); - d3.select("html").on("click." + Utils.guid(), () => { + d3.select("html").on("click." + Utils.guid(), (event) => { let pickerContainerChildren = this.dateTimePickerContainer.selectAll("*"); - var outside = dateTimeTextChildren.filter(Utils.equalToEventTarget).empty() - && targetElement.selectAll(".tsi-dateTimePickerContainer").filter(Utils.equalToEventTarget).empty() - && targetElement.selectAll(".tsi-dateTimeButton").filter(Utils.equalToEventTarget).empty() - && targetElement.selectAll(".tsi-saveButton").filter(Utils.equalToEventTarget).empty(); - var inClickTarget = pickerContainerChildren.filter(Utils.equalToEventTarget).empty(); + var outside = dateTimeTextChildren.filter(el => el == event.target).empty() + && targetElement.selectAll(".tsi-dateTimePickerContainer").filter(el => el == event.target).empty() + && targetElement.selectAll(".tsi-dateTimeButton").filter(el => el == event.target).empty() + && targetElement.selectAll(".tsi-saveButton").filter(el => el == event.target).empty(); + var inClickTarget = pickerContainerChildren.filter(el => el == event.target).empty(); if (outside && inClickTarget && (this.dateTimePickerContainer.style('display') !== 'none')) { this.closeSDTP(); } diff --git a/src/UXClient/Components/LineChart/LineChart.ts b/src/UXClient/Components/LineChart/LineChart.ts index 5072bbd1..3ca74c7c 100644 --- a/src/UXClient/Components/LineChart/LineChart.ts +++ b/src/UXClient/Components/LineChart/LineChart.ts @@ -137,7 +137,7 @@ class LineChart extends TemporalXAxisComponent { this.horizontalValueBox.style('display', 'none'); } - private voronoiMouseout (d: any) { + private voronoiMouseout (d3Event: any, d: any) { //supress if the context menu is visible if (this.contextMenu && this.contextMenu.contextMenuVisible) return; @@ -145,8 +145,8 @@ class LineChart extends TemporalXAxisComponent { this.hideFocusElements(); this.tooltip.hide(); (this.legendObject.legendElement.selectAll('.tsi-splitByLabel')).classed("inFocus", false); - if (d3.event && d3.event.type != 'end') { - d3.event.stopPropagation(); + if (d3Event && d3Event.type != 'end') { + d3Event.stopPropagation(); } this.resetValueElementsFocus(); @@ -766,13 +766,13 @@ class LineChart extends TemporalXAxisComponent { } } - private voronoiContextMenu (mouseEvent) { + private voronoiContextMenu (d3Event, mouseEvent) { if (!this.filteredValueExist() || !this.voronoiExists()) return; - const [mx, my] = d3.mouse(mouseEvent); + const [mx, my] = d3.pointer(d3Event); const site: any = this.voronoiDiagram.find(mx, my); if (this.chartComponentData.displayState[site.data.aggregateKey].contextMenuActions && this.chartComponentData.displayState[site.data.aggregateKey].contextMenuActions.length) { - var mousePosition = d3.mouse(this.targetElement.node()); + var mousePosition = d3.pointer(d3Event); let sitePageCoords; if (this.hasBrush) { @@ -783,7 +783,7 @@ class LineChart extends TemporalXAxisComponent { let eventSite = {pageX: sitePageCoords.left + site[0], pageY: sitePageCoords.top + site[1] - 12} - d3.event.preventDefault(); + d3Event.preventDefault(); this.contextMenu.draw(this.chartComponentData, this.renderTarget, this.chartOptions, mousePosition, site.data.aggregateKey, site.data.splitBy, null, site.data.dateTime, null, eventSite); @@ -794,14 +794,14 @@ class LineChart extends TemporalXAxisComponent { } } - private voronoiClick (mouseEvent) { + private voronoiClick (mouseEvent, d3Event) { //supress if the context menu is visible if (this.contextMenu && this.contextMenu.contextMenuVisible) return; if (!this.filteredValueExist() || !this.voronoiExists()) return; if (this.brushElem && !this.isDroppingMarker) return; - const [mx, my] = d3.mouse(mouseEvent); + const [mx, my] = d3.pointer(d3Event); var site: any = this.voronoiDiagram.find(mx, my); let cDO = this.getCDOFromAggKey(site.data.aggregateKey); if (!this.isDroppingMarker) { @@ -834,19 +834,19 @@ class LineChart extends TemporalXAxisComponent { return Utils.getValueOfVisible(d, this.chartComponentData.getVisibleMeasure(d.aggregateKey, d.splitBy)); } - private brushBrush () { + private brushBrush (d3Event) { var handleHeight = this.getHandleHeight(); this.brushElem.selectAll('.handle') .attr('height', handleHeight) .attr('y', (this.chartHeight - handleHeight) / 2); - if (!d3.event.sourceEvent){ + if (!d3Event.sourceEvent){ return; } - if (d3.event.sourceEvent && d3.event.sourceEvent.type === 'mousemove') { + if (d3Event.sourceEvent && d3Event.sourceEvent.type === 'mousemove') { this.brushElem.select(".selection").attr("visibility", "visible"); //check boundary conditions for width of the brush - if (d3.event.selection[1] - d3.event.selection[0] < this.minBrushWidth) { + if (d3Event.selection[1] - d3Event.selection[0] < this.minBrushWidth) { return; } else { this.brushElem.selectAll(".handle").attr("visibility", "visible"); @@ -856,21 +856,21 @@ class LineChart extends TemporalXAxisComponent { this.surpressBrushTimeSet = false; return; } - if (!d3.event.selection) return; + if (!d3Event.selection) return; if (this.contextMenu) this.contextMenu.hide(); if (this.brushContextMenu) this.brushContextMenu.hide(); - var newBrushStartPosition = d3.event.selection[0]; - var newBrushEndPosition = d3.event.selection[1]; + var newBrushStartPosition = d3Event.selection[0]; + var newBrushEndPosition = d3Event.selection[1]; if (newBrushStartPosition != this.brushStartPosition) { - this.brushStartTime = this.x.invert(d3.event.selection[0]); + this.brushStartTime = this.x.invert(d3Event.selection[0]); this.brushStartPosition = newBrushStartPosition; } if (newBrushEndPosition != this.brushEndPosition) { - this.brushEndTime = this.x.invert(d3.event.selection[1]); + this.brushEndTime = this.x.invert(d3Event.selection[1]); this.brushEndPosition = newBrushEndPosition; } @@ -879,7 +879,7 @@ class LineChart extends TemporalXAxisComponent { } } - private brushEnd (mouseEvent) { + private brushEnd (mouseEvent, d3Event) { if (this.isClearingBrush) { this.isClearingBrush = false; if (this.brushContextMenu) { @@ -887,11 +887,11 @@ class LineChart extends TemporalXAxisComponent { } return; } - if (d3.event && d3.event.selection == null && d3.event.sourceEvent && d3.event.sourceEvent.type == "mouseup" && this.chartOptions.minBrushWidth == 0) { + if (d3Event && d3Event.selection == null && d3Event.sourceEvent && d3Event.sourceEvent.type == "mouseup" && this.chartOptions.minBrushWidth == 0) { if (this.brushContextMenu) { this.brushContextMenu.hide(); } - const [mx, my] = d3.mouse(mouseEvent); + const [mx, my] = d3.pointer(d3Event); var site: any = this.voronoiDiagram.find(mx, my); let isClearingBrush = (this.brushStartPosition !== null) && (this.brushEndPosition !== null); if (this.chartComponentData.stickiedKey !== null && !this.isDroppingMarker && !isClearingBrush) { @@ -918,9 +918,9 @@ class LineChart extends TemporalXAxisComponent { return; } - if (d3.event.selection == null) { + if (d3Event.selection == null) { if (!this.chartOptions.brushClearable) { - d3.select(mouseEvent).transition().call(d3.event.target.move, [this.x(this.brushStartTime), this.x(this.brushEndTime)]); + d3.select(mouseEvent).transition().call(d3Event.target.move, [this.x(this.brushStartTime), this.x(this.brushEndTime)]); } return; } @@ -942,31 +942,31 @@ class LineChart extends TemporalXAxisComponent { }, Infinity); return closestDate; } - var newBrushStartTime = findClosestTime(d3.event.selection[0]); - var newBrushEndTime = findClosestTime(d3.event.selection[1]); + var newBrushStartTime = findClosestTime(d3Event.selection[0]); + var newBrushEndTime = findClosestTime(d3Event.selection[1]); if (newBrushStartTime != this.brushStartTime || newBrushEndTime != this.brushEndTime) { this.brushStartTime = newBrushStartTime; this.brushEndTime = newBrushEndTime; this.brushStartPosition = this.x(this.brushStartTime); this.brushEndPosition = this.x(this.brushEndTime); - transformCall = () => d3.select(mouseEvent).transition().call(d3.event.target.move, [this.x(this.brushStartTime), this.x(this.brushEndTime)]); + transformCall = () => d3.select(mouseEvent).transition().call(d3Event.target.move, [this.x(this.brushStartTime), this.x(this.brushEndTime)]); isZeroWidth = this.x(this.brushStartTime) == this.x(this.brushEndTime); } } } - if (d3.event.selection[1] - d3.event.selection[0] < this.minBrushWidth) { - let rightSide = Math.min(d3.event.selection[0] + this.minBrushWidth, this.x.range()[1]); - transformCall = () => d3.select(mouseEvent).transition().call(d3.event.target.move, [rightSide - this.minBrushWidth, rightSide]); + if (d3Event.selection[1] - d3Event.selection[0] < this.minBrushWidth) { + let rightSide = Math.min(d3Event.selection[0] + this.minBrushWidth, this.x.range()[1]); + transformCall = () => d3.select(mouseEvent).transition().call(d3Event.target.move, [rightSide - this.minBrushWidth, rightSide]); isZeroWidth = (rightSide - this.minBrushWidth == rightSide); } - if (this.chartOptions.brushMoveEndAction && (d3.event.sourceEvent && d3.event.sourceEvent.type == 'mouseup')) { + if (this.chartOptions.brushMoveEndAction && (d3Event.sourceEvent && d3Event.sourceEvent.type == 'mouseup')) { this.chartOptions.brushMoveEndAction(this.brushStartTime, this.brushEndTime); } if (this.chartOptions.brushContextMenuActions && this.chartOptions.autoTriggerBrushContextMenu && - (d3.event.sourceEvent && d3.event.sourceEvent.type == 'mouseup')) { + (d3Event.sourceEvent && d3Event.sourceEvent.type == 'mouseup')) { if (!this.chartOptions.brushContextMenuActions || this.chartOptions.brushContextMenuActions.length == 0) return; - var mousePosition = d3.mouse(this.targetElement.node()); + var mousePosition = d3.pointer(d3Event); //constrain the mouse position to the renderTarget var boundingCRect = this.targetElement.node().getBoundingClientRect(); var correctedMousePositionX = Math.min(boundingCRect.width, Math.max(mousePosition[0], 0)); @@ -1377,7 +1377,7 @@ class LineChart extends TemporalXAxisComponent { .each(function (marker) { const valueText = d3.select(this) .selectAll('.tsi-horizontalMarkerText') - .data([marker.value]); + .data([marker.value]) as d3.Selection; valueText .enter() .append('text') @@ -1390,7 +1390,7 @@ class LineChart extends TemporalXAxisComponent { const valueLine = d3.select(this) .selectAll('.tsi-horizontalMarkerLine') - .data([marker]); + .data([marker]) as d3.Selection; valueLine .enter() .append('line') @@ -1775,9 +1775,9 @@ class LineChart extends TemporalXAxisComponent { this.brush = d3.brushX() .extent([[this.xLowerBound, Math.min(this.chartHeight, this.chartOptions.aggTopMargin)], [this.xUpperBound, this.chartHeight]]) - .on("start", function() { + .on("start", function(event) { if (self.activeMarker !== null && self.isDroppingMarker) { - self.voronoiClick(this); + self.voronoiClick(this, event); } var handleHeight = self.getHandleHeight(); self.brushElem.selectAll('.handle') @@ -1786,12 +1786,12 @@ class LineChart extends TemporalXAxisComponent { .attr('rx', '4px') .attr('ry', '4px'); }) - .on("brush", function () { - self.brushBrush(); + .on("brush", function (event) { + self.brushBrush(event); self.drawBrushRange(); }) - .on("end", function () { - self.brushEnd(this); + .on("end", function (event) { + self.brushEnd(this, event); self.drawBrushRange(); }); this.brushElem.call(this.brush); @@ -1952,24 +1952,24 @@ class LineChart extends TemporalXAxisComponent { //if brushElem present then use the overlay, otherwise create a rect to put the voronoi on var voronoiSelection = (this.brushElem ? this.brushElem.select(".overlay") : this.voronoiRegion); - voronoiSelection.on("mousemove", function () { - let mouseEvent = d3.mouse(this); + voronoiSelection.on("mousemove", function (event) { + let mouseEvent = d3.pointer(event); self.voronoiMousemove(mouseEvent); }) - .on("mouseout", function (d) { + .on("mouseout", function (event, d) { if (!self.filteredValueExist() || !self.voronoiExists()) return; - const [mx, my] = d3.mouse(this); + const [mx, my] = d3.pointer(event); const site = self.voronoiDiagram.find(mx, my); - self.voronoiMouseout(site.data); + self.voronoiMouseout(event, site.data); self.chartOptions.onMouseout(); if (self.tooltip) self.tooltip.hide(); }) - .on("contextmenu", function (d) { - self.voronoiContextMenu(this); + .on("contextmenu", function (event, d) { + self.voronoiContextMenu(event, this); }) - .on("click", function (d) { - self.voronoiClick(this); + .on("click", function (event, d) { + self.voronoiClick(this, event); }); if (this.brushElem) { @@ -2042,8 +2042,8 @@ class LineChart extends TemporalXAxisComponent { this.importMarkers(); } - d3.select("html").on("click." + Utils.guid(), () => { - if (this.ellipsisContainer && d3.event.target != this.ellipsisContainer.select(".tsi-ellipsisButton").node()) { + d3.select("html").on("click." + Utils.guid(), (event) => { + if (this.ellipsisContainer && event.target != this.ellipsisContainer.select(".tsi-ellipsisButton").node()) { this.ellipsisMenu.setMenuVisibility(false); } }); diff --git a/src/UXClient/Components/PieChart/PieChart.ts b/src/UXClient/Components/PieChart/PieChart.ts index fff9f72c..4db63f52 100644 --- a/src/UXClient/Components/PieChart/PieChart.ts +++ b/src/UXClient/Components/PieChart/PieChart.ts @@ -183,11 +183,11 @@ class PieChart extends ChartVisualizationComponent { .on("mouseover", pathMouseInteraction) .on("mousemove" , pathMouseInteraction) .on("mouseout", pathMouseout) - .on("contextmenu", (d: any, i) => { + .on("contextmenu", (e, d: any) => { if (self.chartComponentData.displayState[d.data.aggKey].contextMenuActions && self.chartComponentData.displayState[d.data.aggKey].contextMenuActions.length) { - var mousePosition = d3.mouse(targetElement.node()); - d3.event.preventDefault(); + var mousePosition = d3.pointer(e, targetElement.node()); + e.preventDefault(); self.contextMenu.draw(self.chartComponentData, self.renderTarget, self.chartOptions, mousePosition, d.data.aggKey, d.data.splitBy, mouseOutArcOnContextMenuClick, new Date(self.chartComponentData.timestamp)); diff --git a/src/UXClient/Components/ScatterPlot/ScatterPlot.ts b/src/UXClient/Components/ScatterPlot/ScatterPlot.ts index 65679791..89021d21 100644 --- a/src/UXClient/Components/ScatterPlot/ScatterPlot.ts +++ b/src/UXClient/Components/ScatterPlot/ScatterPlot.ts @@ -186,8 +186,8 @@ class ScatterPlot extends ChartVisualizationComponent { this.draw(); this.gatedShowGrid(); - d3.select("html").on("click." + Utils.guid(), () => { - if (this.ellipsisContainer && d3.event.target != this.ellipsisContainer.select(".tsi-ellipsisButton").node()) { + d3.select("html").on("click." + Utils.guid(), (e) => { + if (this.ellipsisContainer && e.target != this.ellipsisContainer.select(".tsi-ellipsisButton").node()) { this.ellipsisMenu.setMenuVisibility(false); } }); @@ -442,7 +442,7 @@ class ScatterPlot extends ChartVisualizationComponent { .attr("class", 'tsi-lineSeries') .merge(connectedGroups) .each(function(seriesName){ - let series = d3.select(this).selectAll(`.tsi-line`).data([connectedSeriesMap[seriesName].data], d => d[0].aggregateKeyI+d[0].splitBy); + let series = d3.select(this).selectAll(`.tsi-line`).data([connectedSeriesMap[seriesName].data], d => d[0].aggregateKeyI+d[0].splitBy) as d3.Selection; series.exit().remove(); @@ -500,12 +500,15 @@ class ScatterPlot extends ChartVisualizationComponent { } const getOffset = () => (Math.random() < 0.5 ? -1 : 1) * getRandomInRange(0, .01); - this.voronoi = d3.voronoi() - .x((d:any) => this.xScale(d.measures[this.xMeasure]) + getOffset()) - .y((d:any) => this.yScale(d.measures[this.yMeasure]) + getOffset()) - .extent([[0, 0], [this.chartWidth, this.chartHeight]]); - - this.voronoiDiagram = this.voronoi(voronoiData); + const delaunay = d3.Delaunay.from(voronoiData); + this.voronoi = delaunay.voronoi([0, 0, this.chartWidth, this.chartHeight]); + + // this.voronoi = d3.voronoi() + // .x((d:any) => this.xScale(d.measures[this.xMeasure]) + getOffset()) + // .y((d:any) => this.yScale(d.measures[this.yMeasure]) + getOffset()) + // .extent([[0, 0], [this.chartWidth, this.chartHeight]]); + // + // this.voronoiDiagram = this.voronoi(voronoiData); this.voronoiGroup .on("mousemove", function(){ diff --git a/src/UXClient/Components/SingleDateTimePicker/SingleDateTimePicker.ts b/src/UXClient/Components/SingleDateTimePicker/SingleDateTimePicker.ts index e46637f6..fe3c9f5f 100644 --- a/src/UXClient/Components/SingleDateTimePicker/SingleDateTimePicker.ts +++ b/src/UXClient/Components/SingleDateTimePicker/SingleDateTimePicker.ts @@ -48,15 +48,15 @@ class SingleDateTimePicker extends ChartComponent{ this.millis = millis; this.onSet = onSet; this.targetElement = d3.select(this.renderTarget) - .classed("tsi-singleDateTimePicker", true) + .classed("tsi-singleDateTimePicker", true); this.targetElement.html(''); super.themify(this.targetElement, this.chartOptions.theme); this.targetElement.on('keydown', (e) => { - if (d3.event.keyCode <= 40 && d3.event.keyCode >= 37) { //arrow key - d3.event.stopPropagation(); + if (e.keyCode <= 40 && e.keyCode >= 37) { //arrow key + e.stopPropagation(); } - if (d3.event.keyCode === 27 && this.chartOptions.dTPIsModal) { //escape + if (e.keyCode === 27 && this.chartOptions.dTPIsModal) { //escape this.onSet(); } }); @@ -70,10 +70,10 @@ class SingleDateTimePicker extends ChartComponent{ self.onSet(this.millis); } }) - .on('keydown', () => { - if (d3.event.keyCode === 9 && !d3.event.shiftKey && this.chartOptions.dTPIsModal) { // tab + .on('keydown', (e) => { + if (e.keyCode === 9 && !e.shiftKey && this.chartOptions.dTPIsModal) { // tab this.timeInput.node().focus(); - d3.event.preventDefault(); + e.preventDefault(); } }) @@ -235,10 +235,10 @@ class SingleDateTimePicker extends ChartComponent{ this.updateDisplayedDateTime(true); } }) - .on('keydown', () => { - if (d3.event.keyCode === 9 && d3.event.shiftKey && this.chartOptions.dTPIsModal) { // tab + .on('keydown', (e) => { + if (e.keyCode === 9 && e.shiftKey && this.chartOptions.dTPIsModal) { // tab this.saveButton.node().focus(); - d3.event.preventDefault(); + e.preventDefault(); } }); } diff --git a/src/UXClient/Utils/Utils.ts b/src/UXClient/Utils/Utils.ts index a0679418..972cb713 100644 --- a/src/UXClient/Utils/Utils.ts +++ b/src/UXClient/Utils/Utils.ts @@ -690,10 +690,6 @@ export default class Utils { } } - static equalToEventTarget = (function () { - return (this == d3.event.target); - }); - static getAggKeys (data) { let aggregateCounterMap = {}; return data.map((aggregate) => {