Simple percentiles chart
This commit is contained in:
		
							parent
							
								
									69246703c3
								
							
						
					
					
						commit
						8196b4814b
					
				|  | @ -55,11 +55,13 @@ | ||||||
|     "react": "^16.8.0", |     "react": "^16.8.0", | ||||||
|     "react-dom": "^16.8.0", |     "react-dom": "^16.8.0", | ||||||
|     "react-use": "^13.27.0", |     "react-use": "^13.27.0", | ||||||
|  |     "react-vega": "^7.4.1", | ||||||
|     "reason-react": ">=0.7.0", |     "reason-react": ">=0.7.0", | ||||||
|     "reschema": "1.3.0", |     "reschema": "1.3.0", | ||||||
|     "tailwindcss": "1.2.0", |     "tailwindcss": "1.2.0", | ||||||
|     "vega": "5.11.1", |     "vega": "5.11.1", | ||||||
|     "vega-embed": "6.6.0" |     "vega-embed": "6.6.0", | ||||||
|  |     "vega-lite": "^4.14.1" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@glennsl/bs-jest": "^0.5.1", |     "@glennsl/bs-jest": "^0.5.1", | ||||||
|  |  | ||||||
|  | @ -1,49 +1,59 @@ | ||||||
| import * as _ from 'lodash'; | import * as _ from 'lodash'; | ||||||
| import React from 'react'; | import React from 'react'; | ||||||
| import * as vega from 'vega'; | import * as vega from 'vega'; | ||||||
| 
 | import { | ||||||
|  |     createClassFromSpec | ||||||
|  | } from "react-vega"; | ||||||
| import spec from './spec-percentiles'; | import spec from './spec-percentiles'; | ||||||
| 
 | 
 | ||||||
| export class PercentilesChart extends React.PureComponent { | // export class PercentilesChart extends React.PureComponent {
 | ||||||
| 
 | 
 | ||||||
|     constructor(props) { | //     constructor(props) {
 | ||||||
|         super(props); | //         super(props);
 | ||||||
|         this.containerRef = React.createRef(); | //         this.containerRef = React.createRef();
 | ||||||
|         this.view = null; | //         this.view = null;
 | ||||||
| 
 | 
 | ||||||
|         this.spec = _.cloneDeep(spec); | //         this.spec = _.cloneDeep(spec);
 | ||||||
|         this.spec.data[0].values = this.props.data; | //         this.spec.data[0].values = this.props.data;
 | ||||||
|     } | //     }
 | ||||||
| 
 | 
 | ||||||
|     componentDidMount() { | //     componentDidMount() {
 | ||||||
|         this.view = new vega.View(vega.parse(this.spec), { | //         this.view = new vega.View(vega.parse(this.spec), {
 | ||||||
|             renderer: 'canvas', | //             renderer: 'canvas',
 | ||||||
|             container: this.containerRef.current, | //             container: this.containerRef.current,
 | ||||||
|             hover: true | //             hover: true
 | ||||||
|         }); | //         });
 | ||||||
|         this.view.addEventListener('mouseover', function (name, value) { | //         this.view.addEventListener('mouseover', function (name, value) {
 | ||||||
|             console.log("Got event back", name, value) | //             console.log("Got event back", name, value)
 | ||||||
|         }); | //         });
 | ||||||
|         return this.view.runAsync(); | //         return this.view.runAsync();
 | ||||||
|     } | //     }
 | ||||||
| 
 | 
 | ||||||
|     componentWillUnmount() { | //     componentWillUnmount() {
 | ||||||
|         if (this.view) { | //         if (this.view) {
 | ||||||
|             this.view.finalize(); | //             this.view.finalize();
 | ||||||
|         } | //         }
 | ||||||
|     } | //     }
 | ||||||
| 
 | 
 | ||||||
|     // https://gist.github.com/simonw/7e4b21d0f3cc1d17eaa314fb3f904843
 | //     // https://gist.github.com/simonw/7e4b21d0f3cc1d17eaa314fb3f904843
 | ||||||
|     componentDidUpdate() { | //     componentDidUpdate() {
 | ||||||
|         console.log("Update", this.props); | //         console.log("Update", this.props);
 | ||||||
|         var changeset = vega.changeset().remove(() => true).insert(this.props.data); | //         var changeset = vega.changeset().remove(() => true).insert(this.props.data);
 | ||||||
|         this.view.change("table", changeset).run() | //         this.view.change("table", changeset).run()
 | ||||||
|     } | //     }
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|     render() { | //     render() {
 | ||||||
|         return React.createElement("div", { | //         return React.createElement("div", {
 | ||||||
|             ref: this.containerRef, | //             ref: this.containerRef,
 | ||||||
|         }); | //         });
 | ||||||
|     } | //     }
 | ||||||
| } | // }
 | ||||||
|  | 
 | ||||||
|  | const PercentilesChart = createClassFromSpec({ | ||||||
|  |     spec | ||||||
|  | }); | ||||||
|  | 
 | ||||||
|  | export { | ||||||
|  |     PercentilesChart | ||||||
|  | }; | ||||||
|  | @ -20,11 +20,22 @@ let make = | ||||||
|     |> E.A.fmap(((x, r)) => { |     |> E.A.fmap(((x, r)) => { | ||||||
|          { |          { | ||||||
|            "x": x, |            "x": x, | ||||||
|  |            "p1": r |> DistPlus.T.Integral.yToX(0.01), | ||||||
|            "p5": r |> DistPlus.T.Integral.yToX(0.05), |            "p5": r |> DistPlus.T.Integral.yToX(0.05), | ||||||
|  |            "p10": r |> DistPlus.T.Integral.yToX(0.1), | ||||||
|  |            "p20": r |> DistPlus.T.Integral.yToX(0.2), | ||||||
|  |            "p30": r |> DistPlus.T.Integral.yToX(0.3), | ||||||
|  |            "p40": r |> DistPlus.T.Integral.yToX(0.4), | ||||||
|            "p50": r |> DistPlus.T.Integral.yToX(0.5), |            "p50": r |> DistPlus.T.Integral.yToX(0.5), | ||||||
|  |            "p60": r |> DistPlus.T.Integral.yToX(0.6), | ||||||
|  |            "p70": r |> DistPlus.T.Integral.yToX(0.7), | ||||||
|  |            "p80": r |> DistPlus.T.Integral.yToX(0.8), | ||||||
|  |            "p90": r |> DistPlus.T.Integral.yToX(0.9), | ||||||
|            "p95": r |> DistPlus.T.Integral.yToX(0.95), |            "p95": r |> DistPlus.T.Integral.yToX(0.95), | ||||||
|  |            "p99": r |> DistPlus.T.Integral.yToX(0.99), | ||||||
|          } |          } | ||||||
|        }); |        }); | ||||||
|        Js.log3("Data", dists, data); |        Js.log3("Data", dists, data); | ||||||
|   <Internal data />; |   let da = {"facet": data}; | ||||||
|  |   <Internal data=da />; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -7,20 +7,6 @@ | ||||||
|       { |       { | ||||||
|         "name": "facet", |         "name": "facet", | ||||||
|         "values": [ |         "values": [ | ||||||
|           { |  | ||||||
|              "x": 1, |  | ||||||
|             "p5": 2, |  | ||||||
|             "p95": 3, |  | ||||||
|             "p50": 2.5 |  | ||||||
|           }, |  | ||||||
|           {  "x": 2,"p5": 3, "p95": 5, "p50": 4 }, |  | ||||||
|           { |  | ||||||
|    |  | ||||||
|             "x":3, |  | ||||||
|             "p5": 2, |  | ||||||
|             "p95": 8, |  | ||||||
|             "p50": 5 |  | ||||||
|           } |  | ||||||
|         ], |         ], | ||||||
|         "format": { "type": "json", "parse": { "timestamp": "date" } } |         "format": { "type": "json", "parse": { "timestamp": "date" } } | ||||||
|       }, |       }, | ||||||
|  | @ -31,9 +17,9 @@ | ||||||
|           { |           { | ||||||
|             "type": "aggregate", |             "type": "aggregate", | ||||||
|             "groupby": ["x"], |             "groupby": ["x"], | ||||||
|             "ops": ["mean", "mean", "mean"], |             "ops": ["mean","mean","mean","mean","mean", "mean","mean","mean","mean","mean","mean","mean","mean"], | ||||||
|             "fields": ["p5", "p95", "p50"], |             "fields": ["p1", "p5", "p10", "p20", "p30", "p40", "p50", "p60", "p70", "p80", "p90", "p95", "p99"], | ||||||
|             "as": ["p5", "p95", "p50"] |             "as": ["p1", "p5", "p10", "p20", "p30", "p40", "p50", "p60", "p70", "p80", "p90", "p95", "p99"] | ||||||
|           } |           } | ||||||
|         ] |         ] | ||||||
|       } |       } | ||||||
|  | @ -84,15 +70,84 @@ | ||||||
|         "type": "area", |         "type": "area", | ||||||
|         "from": { "data": "table" }, |         "from": { "data": "table" }, | ||||||
|         "encode": { |         "encode": { | ||||||
|           "enter": { "fill": { "value": "#C9D6E5" } }, |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|  |           "update": { | ||||||
|  |             "interpolate": { "value": "monotone" }, | ||||||
|  |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|  |             "y": { "scale": "yscale", "field": "p1" }, | ||||||
|  |             "y2": { "scale": "yscale", "field": "p99" }, | ||||||
|  |             "opacity": { "value": 0.05 } | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         "type": "area", | ||||||
|  |         "from": { "data": "table" }, | ||||||
|  |         "encode": { | ||||||
|  |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|           "update": { |           "update": { | ||||||
|             "interpolate": { "value": "monotone" }, |             "interpolate": { "value": "monotone" }, | ||||||
|             "x": { "scale": "xscale", "field": "x" }, |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|             "y": { "scale": "yscale", "field": "p5" }, |             "y": { "scale": "yscale", "field": "p5" }, | ||||||
|             "y2": { "scale": "yscale", "field": "p95" }, |             "y2": { "scale": "yscale", "field": "p95" }, | ||||||
|             "opacity": { "value": 0.75 } |             "opacity": { "value": 0.1 } | ||||||
|           }, |           } | ||||||
|           "hover": { "opacity": { "value": 0.5 } } |         } | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         "type": "area", | ||||||
|  |         "from": { "data": "table" }, | ||||||
|  |         "encode": { | ||||||
|  |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|  |           "update": { | ||||||
|  |             "interpolate": { "value": "monotone" }, | ||||||
|  |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|  |             "y": { "scale": "yscale", "field": "p10" }, | ||||||
|  |             "y2": { "scale": "yscale", "field": "p90" }, | ||||||
|  |             "opacity": { "value": 0.15 } | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         "type": "area", | ||||||
|  |         "from": { "data": "table" }, | ||||||
|  |         "encode": { | ||||||
|  |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|  |           "update": { | ||||||
|  |             "interpolate": { "value": "monotone" }, | ||||||
|  |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|  |             "y": { "scale": "yscale", "field": "p20" }, | ||||||
|  |             "y2": { "scale": "yscale", "field": "p80" }, | ||||||
|  |             "opacity": { "value": 0.2 } | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         "type": "area", | ||||||
|  |         "from": { "data": "table" }, | ||||||
|  |         "encode": { | ||||||
|  |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|  |           "update": { | ||||||
|  |             "interpolate": { "value": "monotone" }, | ||||||
|  |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|  |             "y": { "scale": "yscale", "field": "p30" }, | ||||||
|  |             "y2": { "scale": "yscale", "field": "p70" }, | ||||||
|  |             "opacity": { "value": 0.2 } | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         "type": "area", | ||||||
|  |         "from": { "data": "table" }, | ||||||
|  |         "encode": { | ||||||
|  |           "enter": { "fill": { "value": "#4C78A8" } }, | ||||||
|  |           "update": { | ||||||
|  |             "interpolate": { "value": "monotone" }, | ||||||
|  |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|  |             "y": { "scale": "yscale", "field": "p40" }, | ||||||
|  |             "y2": { "scale": "yscale", "field": "p60" }, | ||||||
|  |             "opacity": { "value": 0.2 } | ||||||
|  |           } | ||||||
|         } |         } | ||||||
|       }, |       }, | ||||||
|       { |       { | ||||||
|  | @ -103,10 +158,7 @@ | ||||||
|             "interpolate": { "value": "monotone" }, |             "interpolate": { "value": "monotone" }, | ||||||
|             "stroke": { "value": "#4C78A8" }, |             "stroke": { "value": "#4C78A8" }, | ||||||
|             "strokeWidth": { "value": 2 }, |             "strokeWidth": { "value": 2 }, | ||||||
|             "opacity": { "value": 0.8 } |             "opacity": { "value": 0.8 }, | ||||||
|           }, |  | ||||||
|           "hover": { "opacity": { "value": 0.5 } }, |  | ||||||
|           "enter": { |  | ||||||
|             "x": { "scale": "xscale", "field": "x" }, |             "x": { "scale": "xscale", "field": "x" }, | ||||||
|             "y": { "scale": "yscale", "field": "p50" } |             "y": { "scale": "yscale", "field": "p50" } | ||||||
|           } |           } | ||||||
|  |  | ||||||
							
								
								
									
										126
									
								
								yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										126
									
								
								yarn.lock
									
									
									
									
									
								
							|  | @ -1424,6 +1424,11 @@ | ||||||
|   dependencies: |   dependencies: | ||||||
|     "@babel/types" "^7.3.0" |     "@babel/types" "^7.3.0" | ||||||
| 
 | 
 | ||||||
|  | "@types/clone@~0.1.30": | ||||||
|  |   version "0.1.30" | ||||||
|  |   resolved "https://registry.yarnpkg.com/@types/clone/-/clone-0.1.30.tgz#e7365648c1b42136a59c7d5040637b3b5c83b614" | ||||||
|  |   integrity sha1-5zZWSMG0ITalnH1QQGN7O1yDthQ= | ||||||
|  | 
 | ||||||
| "@types/color-name@^1.1.1": | "@types/color-name@^1.1.1": | ||||||
|   version "1.1.1" |   version "1.1.1" | ||||||
|   resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" |   resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" | ||||||
|  | @ -1434,6 +1439,11 @@ | ||||||
|   resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" |   resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" | ||||||
|   integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g== |   integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g== | ||||||
| 
 | 
 | ||||||
|  | "@types/fast-json-stable-stringify@^2.0.0": | ||||||
|  |   version "2.0.0" | ||||||
|  |   resolved "https://registry.yarnpkg.com/@types/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#40363bb847cb86b2c2e1599f1398d11e8329c921" | ||||||
|  |   integrity sha512-mky/O83TXmGY39P1H9YbUpjV6l6voRYlufqfFCvel8l1phuy8HRjdWc1rrPuN53ITBJlbyMSV6z3niOySO5pgQ== | ||||||
|  | 
 | ||||||
| "@types/glob@^7.1.1": | "@types/glob@^7.1.1": | ||||||
|   version "7.1.1" |   version "7.1.1" | ||||||
|   resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575" |   resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575" | ||||||
|  | @ -1545,6 +1555,14 @@ | ||||||
|     "@types/prop-types" "*" |     "@types/prop-types" "*" | ||||||
|     csstype "^2.2.0" |     csstype "^2.2.0" | ||||||
| 
 | 
 | ||||||
|  | "@types/react@^16.9.19": | ||||||
|  |   version "16.9.44" | ||||||
|  |   resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.44.tgz#da84b179c031aef67dc92c33bd3401f1da2fa3bc" | ||||||
|  |   integrity sha512-BtLoJrXdW8DVZauKP+bY4Kmiq7ubcJq+H/aCpRfvPF7RAT3RwR73Sg8szdc2YasbAlWBDrQ6Q+AFM0KwtQY+WQ== | ||||||
|  |   dependencies: | ||||||
|  |     "@types/prop-types" "*" | ||||||
|  |     csstype "^3.0.2" | ||||||
|  | 
 | ||||||
| "@types/shallowequal@^1.1.1": | "@types/shallowequal@^1.1.1": | ||||||
|   version "1.1.1" |   version "1.1.1" | ||||||
|   resolved "https://registry.yarnpkg.com/@types/shallowequal/-/shallowequal-1.1.1.tgz#aad262bb3f2b1257d94c71d545268d592575c9b1" |   resolved "https://registry.yarnpkg.com/@types/shallowequal/-/shallowequal-1.1.1.tgz#aad262bb3f2b1257d94c71d545268d592575c9b1" | ||||||
|  | @ -1928,6 +1946,11 @@ array-equal@^1.0.0: | ||||||
|   resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" |   resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" | ||||||
|   integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= |   integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= | ||||||
| 
 | 
 | ||||||
|  | array-flat-polyfill@^1.0.1: | ||||||
|  |   version "1.0.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/array-flat-polyfill/-/array-flat-polyfill-1.0.1.tgz#1e3a4255be619dfbffbfd1d635c1cf357cd034e7" | ||||||
|  |   integrity sha512-hfJmKupmQN0lwi0xG6FQ5U8Rd97RnIERplymOv/qpq8AoNKPPAnxJadjFA23FNWm88wykh9HmpLJUUwUtNU/iw== | ||||||
|  | 
 | ||||||
| array-tree-filter@^2.1.0: | array-tree-filter@^2.1.0: | ||||||
|   version "2.1.0" |   version "2.1.0" | ||||||
|   resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz#873ac00fec83749f255ac8dd083814b4f6329190" |   resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz#873ac00fec83749f255ac8dd083814b4f6329190" | ||||||
|  | @ -2793,7 +2816,7 @@ clone@^1.0.2: | ||||||
|   resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" |   resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" | ||||||
|   integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= |   integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= | ||||||
| 
 | 
 | ||||||
| clone@^2.1.1, clone@^2.1.2: | clone@^2.1.1, clone@^2.1.2, clone@~2.1.2: | ||||||
|   version "2.1.2" |   version "2.1.2" | ||||||
|   resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" |   resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" | ||||||
|   integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= |   integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= | ||||||
|  | @ -3302,6 +3325,11 @@ csstype@^2.2.0, csstype@^2.5.5, csstype@^2.5.7: | ||||||
|   resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.10.tgz#e63af50e66d7c266edb6b32909cfd0aabe03928b" |   resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.10.tgz#e63af50e66d7c266edb6b32909cfd0aabe03928b" | ||||||
|   integrity sha512-D34BqZU4cIlMCY93rZHbrq9pjTAQJ3U8S8rfBqjwHxkGPThWFjzZDQpgMJY0QViLxth6ZKYiwFBo14RdN44U/w== |   integrity sha512-D34BqZU4cIlMCY93rZHbrq9pjTAQJ3U8S8rfBqjwHxkGPThWFjzZDQpgMJY0QViLxth6ZKYiwFBo14RdN44U/w== | ||||||
| 
 | 
 | ||||||
|  | csstype@^3.0.2: | ||||||
|  |   version "3.0.2" | ||||||
|  |   resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.2.tgz#ee5ff8f208c8cd613b389f7b222c9801ca62b3f7" | ||||||
|  |   integrity sha512-ofovWglpqoqbfLNOTBNZLSbMuGrblAf1efvvArGKOZMBrIoJeu5UsAipQolkijtyQx5MtAzT/J9IHj/CEY1mJw== | ||||||
|  | 
 | ||||||
| d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0: | d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0: | ||||||
|   version "1.2.4" |   version "1.2.4" | ||||||
|   resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" |   resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" | ||||||
|  | @ -4290,6 +4318,11 @@ fast-deep-equal@^3.1.1: | ||||||
|   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" |   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" | ||||||
|   integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== |   integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== | ||||||
| 
 | 
 | ||||||
|  | fast-deep-equal@~3.1.3: | ||||||
|  |   version "3.1.3" | ||||||
|  |   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" | ||||||
|  |   integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== | ||||||
|  | 
 | ||||||
| fast-glob@^2.2.2: | fast-glob@^2.2.2: | ||||||
|   version "2.2.7" |   version "2.2.7" | ||||||
|   resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" |   resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" | ||||||
|  | @ -4319,7 +4352,7 @@ fast-json-patch@^3.0.0-1: | ||||||
|   resolved "https://registry.yarnpkg.com/fast-json-patch/-/fast-json-patch-3.0.0-1.tgz#4c68f2e7acfbab6d29d1719c44be51899c93dabb" |   resolved "https://registry.yarnpkg.com/fast-json-patch/-/fast-json-patch-3.0.0-1.tgz#4c68f2e7acfbab6d29d1719c44be51899c93dabb" | ||||||
|   integrity sha512-6pdFb07cknxvPzCeLsFHStEy+MysPJPgZQ9LbQ/2O67unQF93SNqfdSqnPPl71YMHX+AD8gbl7iuoGFzHEdDuw== |   integrity sha512-6pdFb07cknxvPzCeLsFHStEy+MysPJPgZQ9LbQ/2O67unQF93SNqfdSqnPPl71YMHX+AD8gbl7iuoGFzHEdDuw== | ||||||
| 
 | 
 | ||||||
| fast-json-stable-stringify@^2.0.0: | fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@~2.1.0: | ||||||
|   version "2.1.0" |   version "2.1.0" | ||||||
|   resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" |   resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" | ||||||
|   integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== |   integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== | ||||||
|  | @ -5927,7 +5960,7 @@ json-schema@0.2.3: | ||||||
|   resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" |   resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" | ||||||
|   integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= |   integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= | ||||||
| 
 | 
 | ||||||
| json-stringify-pretty-compact@^2.0.0: | json-stringify-pretty-compact@^2.0.0, json-stringify-pretty-compact@~2.0.0: | ||||||
|   version "2.0.0" |   version "2.0.0" | ||||||
|   resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz#e77c419f52ff00c45a31f07f4c820c2433143885" |   resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz#e77c419f52ff00c45a31f07f4c820c2433143885" | ||||||
|   integrity sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ== |   integrity sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ== | ||||||
|  | @ -8462,6 +8495,15 @@ react-use@^13.27.0: | ||||||
|     ts-easing "^0.2.0" |     ts-easing "^0.2.0" | ||||||
|     tslib "^1.10.0" |     tslib "^1.10.0" | ||||||
| 
 | 
 | ||||||
|  | react-vega@^7.4.1: | ||||||
|  |   version "7.4.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/react-vega/-/react-vega-7.4.1.tgz#b81ea5592f68b41b976bcf6948c0bfbefa8e9a2c" | ||||||
|  |   integrity sha512-ROlB7cQscHVgwbspmEoeQ9uA1yAPykhaW6XSu+P8XZ7TlSe1pNS3gZvrdh4KIPbwS5mYo6TF0gferOhDH5sBlQ== | ||||||
|  |   dependencies: | ||||||
|  |     "@types/react" "^16.9.19" | ||||||
|  |     fast-deep-equal "^3.1.1" | ||||||
|  |     vega-embed "^6.5.1" | ||||||
|  | 
 | ||||||
| react@16.12.0: | react@16.12.0: | ||||||
|   version "16.12.0" |   version "16.12.0" | ||||||
|   resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83" |   resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83" | ||||||
|  | @ -9839,6 +9881,11 @@ tslib@^1.10.0, tslib@^1.9.3: | ||||||
|   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" |   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" | ||||||
|   integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== |   integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== | ||||||
| 
 | 
 | ||||||
|  | tslib@~2.0.0: | ||||||
|  |   version "2.0.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" | ||||||
|  |   integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== | ||||||
|  | 
 | ||||||
| tty-browserify@0.0.0: | tty-browserify@0.0.0: | ||||||
|   version "0.0.0" |   version "0.0.0" | ||||||
|   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" |   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" | ||||||
|  | @ -10134,6 +10181,18 @@ vega-embed@6.6.0: | ||||||
|     vega-themes "^2.8.3" |     vega-themes "^2.8.3" | ||||||
|     vega-tooltip "^0.22.1" |     vega-tooltip "^0.22.1" | ||||||
| 
 | 
 | ||||||
|  | vega-embed@^6.5.1: | ||||||
|  |   version "6.10.0" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-embed/-/vega-embed-6.10.0.tgz#75b2947fb75ccecd0d506296ea2b5c1f9295208c" | ||||||
|  |   integrity sha512-tz4iUvJSaLTbMTRnatihWAUBS6ovLG34FfP1AlBvkKRcJObQukHeJiDSrzY3aJpzORqsvNGG6Oq7b1Rd1wbz+g== | ||||||
|  |   dependencies: | ||||||
|  |     fast-json-patch "^3.0.0-1" | ||||||
|  |     json-stringify-pretty-compact "^2.0.0" | ||||||
|  |     semver "^7.3.2" | ||||||
|  |     vega-schema-url-parser "^1.1.0" | ||||||
|  |     vega-themes "^2.8.4" | ||||||
|  |     vega-tooltip "^0.23.1" | ||||||
|  | 
 | ||||||
| vega-encode@~4.6.0: | vega-encode@~4.6.0: | ||||||
|   version "4.6.0" |   version "4.6.0" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-encode/-/vega-encode-4.6.0.tgz#20456f579da15074f585eae7cdc730ce132095bd" |   resolved "https://registry.yarnpkg.com/vega-encode/-/vega-encode-4.6.0.tgz#20456f579da15074f585eae7cdc730ce132095bd" | ||||||
|  | @ -10157,6 +10216,13 @@ vega-expression@^2.6.4, vega-expression@~2.6.4: | ||||||
|   dependencies: |   dependencies: | ||||||
|     vega-util "^1.13.2" |     vega-util "^1.13.2" | ||||||
| 
 | 
 | ||||||
|  | vega-expression@~2.6.5: | ||||||
|  |   version "2.6.5" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-expression/-/vega-expression-2.6.5.tgz#7bda7524b9223cbbf9034071695c7c2a9bd81971" | ||||||
|  |   integrity sha512-3hJts0gKomu3ePXYeIb+VAw7yNKoHJ6VqSKsHHFPyoEGNdwmlgI5d9IBblelPCiMCHK4sMt7h1OTWB33cfxZGA== | ||||||
|  |   dependencies: | ||||||
|  |     vega-util "^1.14.0" | ||||||
|  | 
 | ||||||
| vega-force@~4.0.4: | vega-force@~4.0.4: | ||||||
|   version "4.0.4" |   version "4.0.4" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-force/-/vega-force-4.0.4.tgz#b73cba2e169cc248c994c9d981c374eb06aff764" |   resolved "https://registry.yarnpkg.com/vega-force/-/vega-force-4.0.4.tgz#b73cba2e169cc248c994c9d981c374eb06aff764" | ||||||
|  | @ -10208,6 +10274,24 @@ vega-hierarchy@~4.0.5: | ||||||
|     vega-dataflow "^5.5.1" |     vega-dataflow "^5.5.1" | ||||||
|     vega-util "^1.13.2" |     vega-util "^1.13.2" | ||||||
| 
 | 
 | ||||||
|  | vega-lite@^4.14.1: | ||||||
|  |   version "4.14.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-lite/-/vega-lite-4.14.1.tgz#76e76ee43dfd598544db61c7bace5d4d34fe892c" | ||||||
|  |   integrity sha512-aA4hoaGd7n50uQi9eogCACeaACULp5ohzqBA0eJ+1PTUv8ILy+QHRDe3hX9FCEaXcq0Dj3DDj/sxF4PL6JaD+w== | ||||||
|  |   dependencies: | ||||||
|  |     "@types/clone" "~0.1.30" | ||||||
|  |     "@types/fast-json-stable-stringify" "^2.0.0" | ||||||
|  |     array-flat-polyfill "^1.0.1" | ||||||
|  |     clone "~2.1.2" | ||||||
|  |     fast-deep-equal "~3.1.3" | ||||||
|  |     fast-json-stable-stringify "~2.1.0" | ||||||
|  |     json-stringify-pretty-compact "~2.0.0" | ||||||
|  |     tslib "~2.0.0" | ||||||
|  |     vega-event-selector "~2.0.3" | ||||||
|  |     vega-expression "~2.6.5" | ||||||
|  |     vega-util "~1.14.1" | ||||||
|  |     yargs "~15.4.1" | ||||||
|  | 
 | ||||||
| vega-loader@^4.2.2, vega-loader@~4.2.2: | vega-loader@^4.2.2, vega-loader@~4.2.2: | ||||||
|   version "4.2.2" |   version "4.2.2" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-loader/-/vega-loader-4.2.2.tgz#a9375f339c558dc1d083cabd2f8c29d8142b18f8" |   resolved "https://registry.yarnpkg.com/vega-loader/-/vega-loader-4.2.2.tgz#a9375f339c558dc1d083cabd2f8c29d8142b18f8" | ||||||
|  | @ -10306,6 +10390,11 @@ vega-themes@^2.8.3: | ||||||
|   resolved "https://registry.yarnpkg.com/vega-themes/-/vega-themes-2.8.3.tgz#3f42a9d29b7274bf963d9d4e1c30ac0d5841d4fa" |   resolved "https://registry.yarnpkg.com/vega-themes/-/vega-themes-2.8.3.tgz#3f42a9d29b7274bf963d9d4e1c30ac0d5841d4fa" | ||||||
|   integrity sha512-BzV/gC2ZAhnv20qpQVtyQW6CYXAGQKjArSdxky1UB1RnR5WMRzPsC+g8ak4k0txTwqhkvMAlDXUMaBgDMTOhQg== |   integrity sha512-BzV/gC2ZAhnv20qpQVtyQW6CYXAGQKjArSdxky1UB1RnR5WMRzPsC+g8ak4k0txTwqhkvMAlDXUMaBgDMTOhQg== | ||||||
| 
 | 
 | ||||||
|  | vega-themes@^2.8.4: | ||||||
|  |   version "2.8.5" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-themes/-/vega-themes-2.8.5.tgz#f53c96676a1f28872b2c0e924da5f211613ce3a7" | ||||||
|  |   integrity sha512-DqNVHZyOtyxsgEy97wfQORw11gDCWR7SIRXyDlqmiwKTLu7Jm+PdOZdw7fNbg0jozywhsPnl0itOj3k9c74CPg== | ||||||
|  | 
 | ||||||
| vega-time@^1.1.0, vega-time@~1.1.0: | vega-time@^1.1.0, vega-time@~1.1.0: | ||||||
|   version "1.1.0" |   version "1.1.0" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-time/-/vega-time-1.1.0.tgz#aedbffaf6d982c43e3b5e7014c9b2fc6bd74434c" |   resolved "https://registry.yarnpkg.com/vega-time/-/vega-time-1.1.0.tgz#aedbffaf6d982c43e3b5e7014c9b2fc6bd74434c" | ||||||
|  | @ -10323,6 +10412,13 @@ vega-tooltip@^0.22.1: | ||||||
|   dependencies: |   dependencies: | ||||||
|     vega-util "^1.13.1" |     vega-util "^1.13.1" | ||||||
| 
 | 
 | ||||||
|  | vega-tooltip@^0.23.1: | ||||||
|  |   version "0.23.2" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-tooltip/-/vega-tooltip-0.23.2.tgz#f4e22c4ce967ce9f1de6518381a74f6fe5102a86" | ||||||
|  |   integrity sha512-H7cIA1tZ26H+GJijTi1ZCBg5XWelWUv57ZNJB7No7VL6ZvV8ha7LJrFPvYQadqMP2bSdbbntKMP8oGtsKUFA7A== | ||||||
|  |   dependencies: | ||||||
|  |     vega-util "^1.14.1" | ||||||
|  | 
 | ||||||
| vega-transforms@~4.7.2: | vega-transforms@~4.7.2: | ||||||
|   version "4.7.2" |   version "4.7.2" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-transforms/-/vega-transforms-4.7.2.tgz#29e3e0a7f662b756c563abc4eb06465aecdda940" |   resolved "https://registry.yarnpkg.com/vega-transforms/-/vega-transforms-4.7.2.tgz#29e3e0a7f662b756c563abc4eb06465aecdda940" | ||||||
|  | @ -10346,6 +10442,11 @@ vega-util@^1.13.1, vega-util@^1.13.2, vega-util@~1.13.2: | ||||||
|   resolved "https://registry.yarnpkg.com/vega-util/-/vega-util-1.13.2.tgz#d9fe2378f0e780290e231d128d8c125407fb3559" |   resolved "https://registry.yarnpkg.com/vega-util/-/vega-util-1.13.2.tgz#d9fe2378f0e780290e231d128d8c125407fb3559" | ||||||
|   integrity sha512-cN/VaO8CjPb3ELfQb+IVi5NGoQpYhWSUFfH7K2ibwagO8obZlUFa9ze8fYiexi2Txf78HFgWm9MXNdV6PROrkw== |   integrity sha512-cN/VaO8CjPb3ELfQb+IVi5NGoQpYhWSUFfH7K2ibwagO8obZlUFa9ze8fYiexi2Txf78HFgWm9MXNdV6PROrkw== | ||||||
| 
 | 
 | ||||||
|  | vega-util@^1.14.0, vega-util@^1.14.1, vega-util@~1.14.1: | ||||||
|  |   version "1.14.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/vega-util/-/vega-util-1.14.1.tgz#0fb614277764f98738ba0b80e5cdfbe663426183" | ||||||
|  |   integrity sha512-pSKJ8OCkgfgHZDTljyj+gmGltgulceWbk1BV6LWrXqp6P3J8qPA/oZA8+a93YNApYxXZ3yzIVUDOo5O27xk0jw== | ||||||
|  | 
 | ||||||
| vega-view-transforms@~4.5.4: | vega-view-transforms@~4.5.4: | ||||||
|   version "4.5.4" |   version "4.5.4" | ||||||
|   resolved "https://registry.yarnpkg.com/vega-view-transforms/-/vega-view-transforms-4.5.4.tgz#e27049e0b6cab8271ac06e1e9c0ebcbbd901b1a0" |   resolved "https://registry.yarnpkg.com/vega-view-transforms/-/vega-view-transforms-4.5.4.tgz#e27049e0b6cab8271ac06e1e9c0ebcbbd901b1a0" | ||||||
|  | @ -10647,7 +10748,7 @@ yargs-parser@^15.0.1: | ||||||
|     camelcase "^5.0.0" |     camelcase "^5.0.0" | ||||||
|     decamelize "^1.2.0" |     decamelize "^1.2.0" | ||||||
| 
 | 
 | ||||||
| yargs-parser@^18.1.1: | yargs-parser@^18.1.1, yargs-parser@^18.1.2: | ||||||
|   version "18.1.3" |   version "18.1.3" | ||||||
|   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" |   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" | ||||||
|   integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== |   integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== | ||||||
|  | @ -10714,6 +10815,23 @@ yargs@^15.0.2, yargs@^15.3.1: | ||||||
|     y18n "^4.0.0" |     y18n "^4.0.0" | ||||||
|     yargs-parser "^18.1.1" |     yargs-parser "^18.1.1" | ||||||
| 
 | 
 | ||||||
|  | yargs@~15.4.1: | ||||||
|  |   version "15.4.1" | ||||||
|  |   resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" | ||||||
|  |   integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== | ||||||
|  |   dependencies: | ||||||
|  |     cliui "^6.0.0" | ||||||
|  |     decamelize "^1.2.0" | ||||||
|  |     find-up "^4.1.0" | ||||||
|  |     get-caller-file "^2.0.1" | ||||||
|  |     require-directory "^2.1.1" | ||||||
|  |     require-main-filename "^2.0.0" | ||||||
|  |     set-blocking "^2.0.0" | ||||||
|  |     string-width "^4.2.0" | ||||||
|  |     which-module "^2.0.0" | ||||||
|  |     y18n "^4.0.0" | ||||||
|  |     yargs-parser "^18.1.2" | ||||||
|  | 
 | ||||||
| zen-observable-ts@^0.8.21: | zen-observable-ts@^0.8.21: | ||||||
|   version "0.8.21" |   version "0.8.21" | ||||||
|   resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d" |   resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d" | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user