@gpa-gemstone/react-graph 1.0.10 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Button.d.ts +6 -0
- package/lib/Button.js +33 -0
- package/lib/GraphContext.d.ts +10 -0
- package/lib/GraphContext.js +7 -2
- package/lib/HorizontalMarker.d.ts +13 -0
- package/lib/HorizontalMarker.js +100 -0
- package/lib/InteractiveButtons.d.ts +2 -2
- package/lib/InteractiveButtons.js +39 -19
- package/lib/Legend.js +4 -3
- package/lib/Plot.js +65 -24
- package/lib/VerticalMarker.d.ts +13 -0
- package/lib/VerticalMarker.js +100 -0
- package/lib/index.d.ts +4 -1
- package/lib/index.js +8 -2
- package/package.json +4 -4
package/lib/Button.d.ts
ADDED
package/lib/Button.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ******************************************************************************************************
|
|
3
|
+
// Button.tsx - Gbtc
|
|
4
|
+
//
|
|
5
|
+
// Copyright © 2020, Grid Protection Alliance. All Rights Reserved.
|
|
6
|
+
//
|
|
7
|
+
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
|
|
8
|
+
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
|
|
9
|
+
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
|
|
10
|
+
// file except in compliance with the License. You may obtain a copy of the License at:
|
|
11
|
+
//
|
|
12
|
+
// http://opensource.org/licenses/MIT
|
|
13
|
+
//
|
|
14
|
+
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
|
|
15
|
+
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
|
|
16
|
+
// License for the specific language governing permissions and limitations.
|
|
17
|
+
//
|
|
18
|
+
// Code Modification History:
|
|
19
|
+
// ----------------------------------------------------------------------------------------------------
|
|
20
|
+
// 04/20/2022 - G Santos
|
|
21
|
+
// Generated original version of source code.
|
|
22
|
+
//
|
|
23
|
+
// ******************************************************************************************************
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
var React = require("react");
|
|
26
|
+
var Button = function (props) {
|
|
27
|
+
/*
|
|
28
|
+
Button that can be pressed.
|
|
29
|
+
*/
|
|
30
|
+
return (React.createElement(React.Fragment, null, props.children));
|
|
31
|
+
};
|
|
32
|
+
exports.default = Button;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0J1dHRvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHlHQUF5RztBQUN6RyxxQkFBcUI7QUFDckIsRUFBRTtBQUNGLHFFQUFxRTtBQUNyRSxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4RyxzR0FBc0c7QUFDdEcsd0ZBQXdGO0FBQ3hGLEVBQUU7QUFDRiwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLHdHQUF3RztBQUN4Ryx3R0FBd0c7QUFDeEcsNEVBQTRFO0FBQzVFLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsd0dBQXdHO0FBQ3hHLHlCQUF5QjtBQUN6QixtREFBbUQ7QUFDbkQsRUFBRTtBQUNGLHlHQUF5Rzs7QUFHekcsNkJBQStCO0FBVy9CLElBQU0sTUFBTSxHQUFvQyxVQUFDLEtBQUs7SUFDcEQ7O01BRUU7SUFHRCxPQUFPLENBQ04sMENBQ0csS0FBSyxDQUFDLFFBQVEsQ0FDZCxDQUNILENBQUM7QUFDTCxDQUFDLENBQUE7QUFFRCxrQkFBZSxNQUFNLENBQUMifQ==
|
package/lib/GraphContext.d.ts
CHANGED
|
@@ -4,14 +4,19 @@ export interface IGraphContext {
|
|
|
4
4
|
XScale: number;
|
|
5
5
|
XOffset: number;
|
|
6
6
|
XHover: number;
|
|
7
|
+
YHover: number;
|
|
7
8
|
YDomain: [number, number];
|
|
8
9
|
YScale: number;
|
|
9
10
|
YOffset: number;
|
|
11
|
+
CurrentMode: 'zoom' | 'pan' | 'select';
|
|
10
12
|
Data: Map<string, IDataSeries>;
|
|
11
13
|
AddData: ((d: IDataSeries) => string);
|
|
12
14
|
RemoveData: (key: string) => void;
|
|
13
15
|
UpdateData: (key: string, d: IDataSeries) => void;
|
|
14
16
|
SetLegend: (key: string, legend: HTMLElement | undefined) => void;
|
|
17
|
+
RegisterSelect: (handlers: IHandlers) => string;
|
|
18
|
+
RemoveSelect: (key: string) => void;
|
|
19
|
+
UpdateSelect: (key: string, handlers: IHandlers) => void;
|
|
15
20
|
}
|
|
16
21
|
export declare const GraphContext: React.Context<IGraphContext>;
|
|
17
22
|
export interface IDataSeries {
|
|
@@ -20,3 +25,8 @@ export interface IDataSeries {
|
|
|
20
25
|
legend?: HTMLElement;
|
|
21
26
|
}
|
|
22
27
|
export declare type LineStyle = '-' | ':';
|
|
28
|
+
export interface IHandlers {
|
|
29
|
+
onClick?: (x: number, y: number) => void;
|
|
30
|
+
onRelease?: (x: number, y: number) => void;
|
|
31
|
+
onPlotLeave?: (x: number, y: number) => void;
|
|
32
|
+
}
|
package/lib/GraphContext.js
CHANGED
|
@@ -30,14 +30,19 @@ exports.GraphContext = React.createContext({
|
|
|
30
30
|
XScale: 0,
|
|
31
31
|
XOffset: 0,
|
|
32
32
|
XHover: NaN,
|
|
33
|
+
YHover: NaN,
|
|
33
34
|
YDomain: [0, 0],
|
|
34
35
|
YScale: 0,
|
|
35
36
|
YOffset: 0,
|
|
37
|
+
CurrentMode: 'select',
|
|
36
38
|
Data: new Map(),
|
|
37
39
|
AddData: (function (_) { return ""; }),
|
|
38
40
|
RemoveData: function (_) { return undefined; },
|
|
39
41
|
UpdateData: function (_) { return undefined; },
|
|
40
|
-
SetLegend: function (_) { return undefined; }
|
|
42
|
+
SetLegend: function (_) { return undefined; },
|
|
43
|
+
RegisterSelect: function (_) { return ""; },
|
|
44
|
+
RemoveSelect: function (_) { return undefined; },
|
|
45
|
+
UpdateSelect: function (_) { return undefined; }
|
|
41
46
|
});
|
|
42
47
|
;
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0dyYXBoQ29udGV4dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUdBQXlHO0FBQ3pHLDJCQUEyQjtBQUMzQixFQUFFO0FBQ0YscUVBQXFFO0FBQ3JFLEVBQUU7QUFDRix3R0FBd0c7QUFDeEcsd0dBQXdHO0FBQ3hHLHNHQUFzRztBQUN0Ryx3RkFBd0Y7QUFDeEYsRUFBRTtBQUNGLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4Ryw0RUFBNEU7QUFDNUUsRUFBRTtBQUNGLDhCQUE4QjtBQUM5Qix3R0FBd0c7QUFDeEcsMEJBQTBCO0FBQzFCLG1EQUFtRDtBQUNuRCxFQUFFO0FBQ0YseUdBQXlHO0FBQ3pHLDZCQUErQjtBQXNCOUIsQ0FBQztBQUVXLFFBQUEsWUFBWSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDOUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNmLE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixNQUFNLEVBQUUsR0FBRztJQUVYLE1BQU0sRUFBRSxHQUFHO0lBQ1gsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNmLE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixXQUFXLEVBQUUsUUFBUTtJQUVyQixJQUFJLEVBQUUsSUFBSSxHQUFHLEVBQXVCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDLFVBQUMsQ0FBYyxJQUFLLE9BQUEsRUFBRSxFQUFGLENBQUUsQ0FBQztJQUNqQyxVQUFVLEVBQUUsVUFBQyxDQUFTLElBQUssT0FBQSxTQUFTLEVBQVQsQ0FBUztJQUNwQyxVQUFVLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxTQUFTLEVBQVQsQ0FBUztJQUM1QixTQUFTLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxTQUFTLEVBQVQsQ0FBUztJQUMzQixjQUFjLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxFQUFFLEVBQUYsQ0FBRTtJQUN6QixZQUFZLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxTQUFTLEVBQVQsQ0FBUztJQUM5QixZQUFZLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxTQUFTLEVBQVQsQ0FBUztDQUNkLENBQUMsQ0FBQztBQU1uQixDQUFDIn0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { LineStyle } from './GraphContext';
|
|
3
|
+
export interface IProps {
|
|
4
|
+
start?: number;
|
|
5
|
+
end?: number;
|
|
6
|
+
Value: number;
|
|
7
|
+
setValue?: (y: number) => void;
|
|
8
|
+
color: string;
|
|
9
|
+
lineStyle: LineStyle;
|
|
10
|
+
width: number;
|
|
11
|
+
}
|
|
12
|
+
declare function HorizontalMarker(props: IProps): JSX.Element;
|
|
13
|
+
export default HorizontalMarker;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ******************************************************************************************************
|
|
3
|
+
// HorizontalMarker.tsx - Gbtc
|
|
4
|
+
//
|
|
5
|
+
// Copyright © 2022, Grid Protection Alliance. All Rights Reserved.
|
|
6
|
+
//
|
|
7
|
+
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
|
|
8
|
+
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
|
|
9
|
+
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
|
|
10
|
+
// file except in compliance with the License. You may obtain a copy of the License at:
|
|
11
|
+
//
|
|
12
|
+
// http://opensource.org/licenses/MIT
|
|
13
|
+
//
|
|
14
|
+
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
|
|
15
|
+
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
|
|
16
|
+
// License for the specific language governing permissions and limitations.
|
|
17
|
+
//
|
|
18
|
+
// Code Modification History:
|
|
19
|
+
// ----------------------------------------------------------------------------------------------------
|
|
20
|
+
// 04/29/2022 - C Lackner
|
|
21
|
+
// Generated original version of source code.
|
|
22
|
+
//
|
|
23
|
+
// ******************************************************************************************************
|
|
24
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
25
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
26
|
+
if (!m) return o;
|
|
27
|
+
var i = m.call(o), r, ar = [], e;
|
|
28
|
+
try {
|
|
29
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
30
|
+
}
|
|
31
|
+
catch (error) { e = { error: error }; }
|
|
32
|
+
finally {
|
|
33
|
+
try {
|
|
34
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
35
|
+
}
|
|
36
|
+
finally { if (e) throw e.error; }
|
|
37
|
+
}
|
|
38
|
+
return ar;
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
var React = require("react");
|
|
42
|
+
var GraphContext_1 = require("./GraphContext");
|
|
43
|
+
function HorizontalMarker(props) {
|
|
44
|
+
/*
|
|
45
|
+
Marks a Y Value horizontally as a line.
|
|
46
|
+
*/
|
|
47
|
+
var context = React.useContext(GraphContext_1.GraphContext);
|
|
48
|
+
var _a = __read(React.useState(props.Value), 2), value = _a[0], setValue = _a[1];
|
|
49
|
+
var _b = __read(React.useState(false), 2), isSelected = _b[0], setSelected = _b[1];
|
|
50
|
+
var _c = __read(React.useState(""), 2), guid = _c[0], setGuid = _c[1];
|
|
51
|
+
React.useEffect(function () {
|
|
52
|
+
var id = context.RegisterSelect({
|
|
53
|
+
onClick: onClick,
|
|
54
|
+
onRelease: function (_) { return setSelected(false); },
|
|
55
|
+
onPlotLeave: function (_) { return setSelected(false); }
|
|
56
|
+
});
|
|
57
|
+
setGuid(id);
|
|
58
|
+
return function () { context.RemoveSelect(id); };
|
|
59
|
+
}, []);
|
|
60
|
+
React.useEffect(function () {
|
|
61
|
+
if (guid === "")
|
|
62
|
+
return;
|
|
63
|
+
context.UpdateSelect(guid, {
|
|
64
|
+
onClick: onClick,
|
|
65
|
+
onRelease: function (_) { return setSelected(false); },
|
|
66
|
+
onPlotLeave: function (_) { return setSelected(false); }
|
|
67
|
+
});
|
|
68
|
+
}, [props.width, props.Value, context.YScale]);
|
|
69
|
+
React.useEffect(function () {
|
|
70
|
+
setValue(props.Value);
|
|
71
|
+
}, [props.Value]);
|
|
72
|
+
React.useEffect(function () {
|
|
73
|
+
if (props.setValue === undefined)
|
|
74
|
+
return;
|
|
75
|
+
if (!isSelected && props.Value !== value)
|
|
76
|
+
props.setValue(value);
|
|
77
|
+
}, [isSelected, value]);
|
|
78
|
+
React.useEffect(function () {
|
|
79
|
+
if (context.CurrentMode !== 'select')
|
|
80
|
+
setSelected(false);
|
|
81
|
+
}, [context.CurrentMode]);
|
|
82
|
+
React.useEffect(function () {
|
|
83
|
+
if (isSelected)
|
|
84
|
+
setValue(context.YHover);
|
|
85
|
+
}, [context.YHover]);
|
|
86
|
+
function generateData() {
|
|
87
|
+
var x1 = (props.start === undefined ? context.XDomain[0] : props.start);
|
|
88
|
+
var x2 = (props.end === undefined ? context.XDomain[1] : props.end);
|
|
89
|
+
return "M " + (x1 * context.XScale + context.XOffset) + " " + (value * context.YScale + context.YOffset) + " L " + (x2 * context.XScale + context.XOffset) + " " + (value * context.YScale + context.YOffset);
|
|
90
|
+
}
|
|
91
|
+
function onClick(_, y) {
|
|
92
|
+
var d = Math.abs(props.width / context.YScale);
|
|
93
|
+
if (Math.abs(y - props.Value) < d)
|
|
94
|
+
setSelected(true);
|
|
95
|
+
}
|
|
96
|
+
return (React.createElement("g", null,
|
|
97
|
+
React.createElement("path", { d: generateData(), style: { fill: 'none', strokeWidth: props.width, stroke: props.color, cursor: (props.setValue !== undefined && true) ? 'grab' : 'auto' }, strokeDasharray: props.lineStyle === ':' ? '10,5' : 'none' })));
|
|
98
|
+
}
|
|
99
|
+
exports.default = HorizontalMarker;
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSG9yaXpvbnRhbE1hcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Ib3Jpem9udGFsTWFya2VyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEseUdBQXlHO0FBQ3pHLCtCQUErQjtBQUMvQixFQUFFO0FBQ0YscUVBQXFFO0FBQ3JFLEVBQUU7QUFDRix3R0FBd0c7QUFDeEcsd0dBQXdHO0FBQ3hHLHNHQUFzRztBQUN0Ryx3RkFBd0Y7QUFDeEYsRUFBRTtBQUNGLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4Ryw0RUFBNEU7QUFDNUUsRUFBRTtBQUNGLDhCQUE4QjtBQUM5Qix3R0FBd0c7QUFDeEcsMEJBQTBCO0FBQzFCLG1EQUFtRDtBQUNuRCxFQUFFO0FBQ0YseUdBQXlHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHekcsNkJBQStCO0FBQy9CLCtDQUFrRTtBQVlsRSxTQUFTLGdCQUFnQixDQUFDLEtBQWE7SUFDckM7O01BRUU7SUFDRixJQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLDJCQUFZLENBQUMsQ0FBQTtJQUN4QyxJQUFBLEtBQUEsT0FBb0IsS0FBSyxDQUFDLFFBQVEsQ0FBUyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUEsRUFBdEQsS0FBSyxRQUFBLEVBQUUsUUFBUSxRQUF1QyxDQUFDO0lBQ3hELElBQUEsS0FBQSxPQUE2QixLQUFLLENBQUMsUUFBUSxDQUFVLEtBQUssQ0FBQyxJQUFBLEVBQXpELFVBQVUsUUFBQSxFQUFFLFdBQVcsUUFBa0MsQ0FBQztJQUM1RCxJQUFBLEtBQUEsT0FBa0IsS0FBSyxDQUFDLFFBQVEsQ0FBUyxFQUFFLENBQUMsSUFBQSxFQUEzQyxJQUFJLFFBQUEsRUFBRSxPQUFPLFFBQThCLENBQUM7SUFFbkQsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNWLElBQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFDOUIsT0FBTyxT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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import * as React from 'react';
|
|
2
2
|
interface IProps {
|
|
3
3
|
showZoom: boolean;
|
|
4
4
|
showPan: boolean;
|
|
@@ -11,5 +11,5 @@ interface IProps {
|
|
|
11
11
|
y: number;
|
|
12
12
|
}
|
|
13
13
|
declare type ButtonType = ('zoom' | 'pan' | 'reset' | 'select' | 'download');
|
|
14
|
-
declare
|
|
14
|
+
declare const InteractiveButtons: React.FunctionComponent<IProps>;
|
|
15
15
|
export default InteractiveButtons;
|
|
@@ -40,12 +40,14 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
40
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
41
|
var React = require("react");
|
|
42
42
|
var gpa_symbols_1 = require("@gpa-gemstone/gpa-symbols");
|
|
43
|
-
|
|
43
|
+
var Button_1 = require("./Button");
|
|
44
|
+
var InteractiveButtons = function (props) {
|
|
44
45
|
/*
|
|
45
46
|
Used to select Zoom, Drag or Reset
|
|
46
47
|
*/
|
|
47
48
|
var _a = __read(React.useState(false), 2), expand = _a[0], setExpand = _a[1];
|
|
48
|
-
var
|
|
49
|
+
var nChildren = (props.children == null) ? 0 : React.Children.count(props.children);
|
|
50
|
+
var nButtons = (props.showZoom ? 1 : 0) + (props.showPan ? 1 : 0) + (props.showReset ? 1 : 0) + (props.showSelect ? 1 : 0) + (props.showDownload ? 1 : 0) + nChildren;
|
|
49
51
|
function openTray(evt) {
|
|
50
52
|
evt.stopPropagation();
|
|
51
53
|
setExpand(true);
|
|
@@ -55,30 +57,48 @@ function InteractiveButtons(props) {
|
|
|
55
57
|
if (nButtons === 1 || !expand)
|
|
56
58
|
return (React.createElement("g", null,
|
|
57
59
|
React.createElement("circle", { stroke: 'black', onClick: openTray, r: 10, cx: props.x, cy: props.y, style: { fill: '#002eff', pointerEvents: 'all' }, onMouseDown: function (evt) { return evt.stopPropagation(); }, onMouseUp: function (evt) { return evt.stopPropagation(); } }),
|
|
58
|
-
React.createElement("text", { fill: 'black', style: { fontSize: '1em', textAnchor: 'middle', dominantBaseline: 'middle' }, x: props.x, y: props.y }, props.currentSelection === 'zoom' ? gpa_symbols_1.MagnifyingGlass : props.currentSelection === 'pan' ? gpa_symbols_1.FourWayArrow : gpa_symbols_1.
|
|
60
|
+
React.createElement("text", { fill: 'black', style: { fontSize: '1em', textAnchor: 'middle', dominantBaseline: 'middle' }, x: props.x, y: props.y }, props.currentSelection === 'zoom' ? gpa_symbols_1.MagnifyingGlass : props.currentSelection === 'pan' ? gpa_symbols_1.FourWayArrow : gpa_symbols_1.Flag)));
|
|
59
61
|
var width = 25 * nButtons - 25;
|
|
60
62
|
var symbols = [];
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
symbols.push('
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
symbols.push('
|
|
69
|
-
|
|
70
|
-
|
|
63
|
+
var symbolNames = [];
|
|
64
|
+
if (props.showZoom) {
|
|
65
|
+
symbolNames.push('zoom');
|
|
66
|
+
symbols.push(React.createElement(Button_1.default, { onClick: function () { props.setSelection('zoom'); setExpand(false); } }, gpa_symbols_1.MagnifyingGlass));
|
|
67
|
+
}
|
|
68
|
+
if (props.showPan) {
|
|
69
|
+
symbolNames.push('pan');
|
|
70
|
+
symbols.push(React.createElement(Button_1.default, { onClick: function () { props.setSelection('pan'); setExpand(false); } }, gpa_symbols_1.FourWayArrow));
|
|
71
|
+
}
|
|
72
|
+
if (props.showSelect) {
|
|
73
|
+
symbolNames.push('select');
|
|
74
|
+
symbols.push(React.createElement(Button_1.default, { onClick: function () { props.setSelection('select'); setExpand(false); } }, gpa_symbols_1.Flag));
|
|
75
|
+
}
|
|
76
|
+
if (props.showReset) {
|
|
77
|
+
symbolNames.push('reset');
|
|
78
|
+
symbols.push(React.createElement(Button_1.default, { onClick: function () { setExpand(false); } }, gpa_symbols_1.House));
|
|
79
|
+
}
|
|
80
|
+
if (props.showDownload) {
|
|
81
|
+
symbolNames.push('download');
|
|
82
|
+
symbols.push(React.createElement(Button_1.default, { onClick: function () { setExpand(false); } }, gpa_symbols_1.InputNumbers));
|
|
83
|
+
}
|
|
71
84
|
return (React.createElement("g", null,
|
|
72
85
|
React.createElement("path", { d: "M " + props.x + " " + (props.y - 10) + " A 10 10 180 0 1 " + props.x + " " + (props.y + 10) + " h -" + width + " A 10 10 180 0 1 " + (props.x - width) + " " + (props.y - 10) + " h " + width, style: {
|
|
73
86
|
fill: '#1e90ff'
|
|
74
87
|
} }),
|
|
75
|
-
symbols.map(function (s, i) { return React.createElement(
|
|
88
|
+
symbols.map(function (s, i) { return React.createElement(CircleButton, { key: i, x: props.x - i * 25, y: props.y, active: props.currentSelection === symbolNames[i], button: s }); }),
|
|
89
|
+
React.Children.map(props.children, function (element, i) {
|
|
90
|
+
if (!React.isValidElement(element))
|
|
91
|
+
return null;
|
|
92
|
+
if (element.type === Button_1.default)
|
|
93
|
+
return React.createElement(CircleButton, { active: false, x: props.x - (i + symbols.length) * 25, y: props.y, button: element });
|
|
94
|
+
return null;
|
|
95
|
+
}),
|
|
76
96
|
React.createElement("path", { d: "M " + props.x + " " + (props.y - 10) + " A 10 10 180 0 1 " + props.x + " " + (props.y + 10) + " h -" + width + " A 10 10 180 0 1 " + (props.x - width) + " " + (props.y - 10) + " h " + width, stroke: 'black' })));
|
|
77
|
-
}
|
|
78
|
-
function
|
|
97
|
+
};
|
|
98
|
+
function CircleButton(props) {
|
|
79
99
|
return (React.createElement(React.Fragment, null,
|
|
80
|
-
React.createElement("circle", { r: 10, cx: props.x, cy: props.y, style: { fill: (props.active ? '#002eff' : '#1e90ff'), pointerEvents: 'all' }, onMouseDown: function (evt) { return evt.stopPropagation(); }, onClick: function (evt) { evt.stopPropagation(); props.onClick(); }, onMouseUp: function (evt) { return evt.stopPropagation(); } }),
|
|
81
|
-
React.createElement("text", { fill: 'black', style: { fontSize: '1em', textAnchor: 'middle', dominantBaseline: 'middle' }, x: props.x, y: props.y }, props.
|
|
100
|
+
React.createElement("circle", { r: 10, cx: props.x, cy: props.y, style: { fill: (props.active ? '#002eff' : '#1e90ff'), pointerEvents: 'all' }, onMouseDown: function (evt) { return evt.stopPropagation(); }, onClick: function (evt) { evt.stopPropagation(); props.button.props.onClick(); }, onMouseUp: function (evt) { return evt.stopPropagation(); } }),
|
|
101
|
+
React.createElement("text", { fill: 'black', style: { fontSize: '1em', textAnchor: 'middle', dominantBaseline: 'middle' }, x: props.x, y: props.y }, props.button)));
|
|
82
102
|
}
|
|
83
103
|
exports.default = InteractiveButtons;
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJhY3RpdmVCdXR0b25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0ludGVyYWN0aXZlQnV0dG9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHlHQUF5RztBQUN6RyxpQ0FBaUM7QUFDakMsRUFBRTtBQUNGLHFFQUFxRTtBQUNyRSxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4RyxzR0FBc0c7QUFDdEcsd0ZBQXdGO0FBQ3hGLEVBQUU7QUFDRiwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLHdHQUF3RztBQUN4Ryx3R0FBd0c7QUFDeEcsNEVBQTRFO0FBQzVFLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsd0dBQXdHO0FBQ3hHLDBCQUEwQjtBQUMxQixtREFBbUQ7QUFDbkQsRUFBRTtBQUNGLHlHQUF5Rzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXpHLDZCQUErQjtBQUMvQix5REFBa0c7QUFDbEcsbUNBQTZCO0FBZ0I3QixJQUFNLGtCQUFrQixHQUFvQyxVQUFDLEtBQUs7SUFDOUQ7O01BRUU7SUFDSSxJQUFBLEtBQUEsT0FBc0IsS0FBSyxDQUFDLFFBQVEsQ0FBVSxLQUFLLENBQUMsSUFBQSxFQUFuRCxNQUFNLFFBQUEsRUFBRSxTQUFTLFFBQWtDLENBQUM7SUFFM0QsSUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0RixJQUFNLFFBQVEsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUVuSyxTQUFTLFFBQVEsQ0FBQyxHQUFxQjtRQUNyQyxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdEIsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxJQUFJLFFBQVEsS0FBSyxDQUFDO1FBQ2hCLE9BQU8sSUFBSSxDQUFDO0lBRWQsSUFBSSxRQUFRLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTTtRQUMzQixPQUFPLENBQ0w7WUFDRSxnQ0FBUSxNQUFNLEVBQUUsT0FBTyxFQUNyQixPQUFPLEVBQUUsUUFBUSxFQUNqQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUMvQixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsRUFDaEQsV0FBVyxFQUFFLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLGVBQWUsRUFBRSxFQUFyQixDQUFxQixFQUMzQyxTQUFTLEVBQUUsVUFBQyxHQUFHLElBQUssT0FBQSxHQUFHLENBQUMsZUFBZSxFQUFFLEVBQXJCLENBQXFCLEdBQUk7WUFDL0MsOEJBQU0sSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLElBQ3RILEtBQUssQ0FBQyxnQkFBZ0IsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLDZCQUFlLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsS0FBSyxLQUFLLENBQUEsQ0FBQyxDQUFDLDBCQUFZLENBQUMsQ0FBQyxDQUFDLGtCQUFJLENBQ3ZHLENBQ0wsQ0FBQyxDQUFBO0lBRVQsSUFBTSxLQUFLLEdBQUcsRUFBRSxHQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDL0IsSUFBTSxPQUFPLEdBQUcsRUFBMEIsQ0FBQztJQUMzQyxJQUFNLFdBQVcsR0FBRyxFQUFrQixDQUFDO0lBQ3ZDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtRQUNsQixXQUFXLENBQUMsSUFBSSxDQUFDLE1BQW9CLENBQUMsQ0FBQztRQUN2QyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFDLGdCQUFNLElBQUMsT0FBTyxFQUFFLGNBQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUMsSUFBRyw2QkFBZSxDQUFVLENBQUMsQ0FBQTtLQUNqSDtJQUNELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtRQUNqQixXQUFXLENBQUMsSUFBSSxDQUFDLEtBQW1CLENBQUMsQ0FBQztRQUN0QyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFDLGdCQUFNLElBQUMsT0FBTyxFQUFFLGNBQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUMsSUFBRywwQkFBWSxDQUFVLENBQUMsQ0FBQTtLQUM3RztJQUNELElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUNsQixXQUFXLENBQUMsSUFBSSxDQUFDLFFBQXNCLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFDLGdCQUFNLElBQUMsT0FBTyxFQUFFLGNBQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUMsSUFBRyxrQkFBSSxDQUFVLENBQUMsQ0FBQTtLQUMxRztJQUNELElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRTtRQUNuQixXQUFXLENBQUMsSUFBSSxDQUFDLE9BQXFCLENBQUMsQ0FBQztRQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFDLGdCQUFNLElBQUMsT0FBTyxFQUFFLGNBQU8sU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFBLENBQUMsQ0FBQyxJQUFHLG1CQUFLLENBQVUsQ0FBQyxDQUFBO0tBQzNFO0lBQ0QsSUFBSSxLQUFLLENBQUMsWUFBWSxFQUFFO1FBQ3RCLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBd0IsQ0FBQyxDQUFDO1FBQzNDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQUMsZ0JBQU0sSUFBQyxPQUFPLEVBQUUsY0FBTyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUEsQ0FBQyxDQUFDLElBQUcsMEJBQVksQ0FBVSxDQUFDLENBQUE7S0FDbEY7SUFFRCxPQUFPLENBQ047UUFDSSw4QkFBTSxDQUFDLEVBQUUsT0FBSyxLQUFLLENBQUMsQ0FBQyxVQUFJLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSwwQkFBb0IsS0FBSyxDQUFDLENBQUMsVUFBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsYUFBTyxLQUFLLDBCQUFvQixLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsWUFBTSxLQUFPLEVBQUUsS0FBSyxFQUFFO2dCQUNqSyxJQUFJLEVBQUUsU0FBUzthQUFDLEdBQUk7UUFDdEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFDLENBQUMsRUFBQyxDQUFDLElBQUssT0FBQSxvQkFBQyxZQUFZLElBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsZ0JBQWdCLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEdBQUksRUFBckgsQ0FBcUgsQ0FBQztRQUUzSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQUMsT0FBTyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO2dCQUM5QixPQUFPLElBQUksQ0FBQztZQUNoQixJQUFLLE9BQW1DLENBQUMsSUFBSSxLQUFLLGdCQUFNO2dCQUNwRCxPQUFPLG9CQUFDLFlBQVksSUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sR0FBSSxDQUFDO1lBQzVHLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQztRQUV6Qiw4QkFBTSxDQUFDLEVBQUUsT0FBSyxLQUFLLENBQUMsQ0FBQyxVQUFJLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSwwQkFBb0IsS0FBSyxDQUFDLENBQUMsVUFBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsYUFBTyxLQUFLLDBCQUFvQixLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsWUFBTSxLQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sR0FBSSxDQUNqTCxDQUFDLENBQUE7QUFFVixDQUFDLENBQUE7QUFFRCxTQUFTLFlBQVksQ0FBQyxLQUEwRTtJQUM5RixPQUFPLENBQUU7UUFDUCxnQ0FBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxFQUNySCxXQUFXLEVBQUUsVUFBQyxHQUFHLElBQUssT0FBQSxHQUFHLENBQUMsZUFBZSxFQUFFLEVBQXJCLENBQXFCLEVBQzNDLE9BQU8sRUFBRSxVQUFDLEdBQUcsSUFBTyxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQSxDQUFBLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBQyxHQUFHLElBQUssT0FBQSxHQUFHLENBQUMsZUFBZSxFQUFFLEVBQXJCLENBQXFCLEdBQUc7UUFDdkgsOEJBQU0sSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLElBQ3hILEtBQUssQ0FBQyxNQUFNLENBQ04sQ0FDTixDQUFDLENBQUE7QUFDTixDQUFDO0FBRUQsa0JBQWUsa0JBQWtCLENBQUMifQ==
|
package/lib/Legend.js
CHANGED
|
@@ -53,8 +53,9 @@ function Legend(props) {
|
|
|
53
53
|
var context = React.useContext(GraphContext_1.GraphContext);
|
|
54
54
|
var w = (props.location === 'bottom' ? props.graphWidth : props.width);
|
|
55
55
|
var h = (props.location === 'right' ? props.graphHeight : props.height);
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
var position = (props.location === 'bottom' ? 'absolute' : 'relative');
|
|
57
|
+
return (React.createElement("div", { style: { height: h, width: w, position: position, float: props.location, display: 'flex', flexWrap: 'wrap', bottom: 0 } }, __spreadArray([], __read(context.Data.values()), false).map(function (series, index) { return (series.legend !== undefined ?
|
|
58
|
+
React.createElement("div", { key: index, style: { width: (props.location === 'bottom' ? w / 3 : w) } }, series.legend) : null); })));
|
|
58
59
|
}
|
|
59
60
|
exports.default = Legend;
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0xlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHlHQUF5RztBQUN6RyxxQkFBcUI7QUFDckIsRUFBRTtBQUNGLHFFQUFxRTtBQUNyRSxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4RyxzR0FBc0c7QUFDdEcsd0ZBQXdGO0FBQ3hGLEVBQUU7QUFDRiwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLHdHQUF3RztBQUN4Ryx3R0FBd0c7QUFDeEcsNEVBQTRFO0FBQzVFLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsd0dBQXdHO0FBQ3hHLDJCQUEyQjtBQUMzQixtREFBbUQ7QUFDbkQsRUFBRTtBQUNGLHlHQUF5Rzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXpHLDZCQUErQjtBQUMvQiwrQ0FBMkM7QUFVM0MsU0FBUyxNQUFNLENBQUMsS0FBYTtJQUMzQixJQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLDJCQUFZLENBQUMsQ0FBQTtJQUM5QyxJQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFBLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEUsSUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQSxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLElBQU0sUUFBUSxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDckUsT0FBTyxDQUNMLDZCQUFLLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFRLFVBQUEsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLFFBQWdCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFDdkgseUJBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBRSxHQUFHLENBQUMsVUFBQyxNQUFNLEVBQUUsS0FBSyxJQUFLLE9BQUEsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQzNFLDZCQUFLLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUMsS0FBSyxFQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQ2pFLE1BQU0sQ0FBQyxNQUFNLENBQ2hCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUhtQyxDQUduQyxDQUFDLENBQ2IsQ0FBQyxDQUFBO0FBQ2IsQ0FBQztBQUVELGtCQUFlLE1BQU0sQ0FBQyJ9
|
package/lib/Plot.js
CHANGED
|
@@ -55,6 +55,11 @@ var lodash_1 = require("lodash");
|
|
|
55
55
|
var TimeAxis_1 = require("./TimeAxis");
|
|
56
56
|
var ValueAxis_1 = require("./ValueAxis");
|
|
57
57
|
var Legend_1 = require("./Legend");
|
|
58
|
+
var LineWithThreshold_1 = require("./LineWithThreshold");
|
|
59
|
+
var Line_1 = require("./Line");
|
|
60
|
+
var Button_1 = require("./Button");
|
|
61
|
+
var HorizontalMarker_1 = require("./HorizontalMarker");
|
|
62
|
+
var VerticalMarker_1 = require("./VerticalMarker");
|
|
58
63
|
var SvgStyle = {
|
|
59
64
|
fill: 'none',
|
|
60
65
|
userSelect: 'none',
|
|
@@ -72,24 +77,25 @@ var Plot = function (props) {
|
|
|
72
77
|
var SVGref = React.useRef(null);
|
|
73
78
|
var guid = React.useMemo(function () { return (0, helper_functions_1.CreateGuid)(); }, []);
|
|
74
79
|
var _a = __read(React.useState(new Map()), 2), data = _a[0], setData = _a[1];
|
|
75
|
-
var _b = __read(React.useState(
|
|
76
|
-
var _c = __read(React.useState(
|
|
77
|
-
var _d = __read(React.useState(
|
|
78
|
-
var _e = __read(React.useState(
|
|
79
|
-
var _f = __read(React.useState(0), 2),
|
|
80
|
-
var _g = __read(React.useState(
|
|
81
|
-
var _h = __read(React.useState(
|
|
82
|
-
var _j = __read(React.useState('
|
|
83
|
-
var _k = __read(React.useState(
|
|
84
|
-
var _l = __read(React.useState(
|
|
85
|
-
var _m = __read(React.useState([0, 0]), 2),
|
|
86
|
-
var _o = __read(React.useState(
|
|
87
|
-
var _p = __read(React.useState(10), 2),
|
|
88
|
-
var _q = __read(React.useState(
|
|
89
|
-
var _r = __read(React.useState(5), 2),
|
|
90
|
-
var _s = __read(React.useState(
|
|
91
|
-
var _t = __read(React.useState(0), 2),
|
|
92
|
-
var _u = __read(React.useState(0), 2),
|
|
80
|
+
var _b = __read(React.useState(new Map()), 2), handlers = _b[0], setHandlers = _b[1];
|
|
81
|
+
var _c = __read(React.useState(props.defaultTdomain), 2), tDomain = _c[0], setTdomain = _c[1];
|
|
82
|
+
var _d = __read(React.useState(0), 2), tOffset = _d[0], setToffset = _d[1];
|
|
83
|
+
var _e = __read(React.useState(1), 2), tScale = _e[0], setTscale = _e[1];
|
|
84
|
+
var _f = __read(React.useState([0, 0]), 2), yDomain = _f[0], setYdomain = _f[1];
|
|
85
|
+
var _g = __read(React.useState(0), 2), yOffset = _g[0], setYoffset = _g[1];
|
|
86
|
+
var _h = __read(React.useState(1), 2), yScale = _h[0], setYscale = _h[1];
|
|
87
|
+
var _j = __read(React.useState('none'), 2), mouseMode = _j[0], setMouseMode = _j[1];
|
|
88
|
+
var _k = __read(React.useState('zoom'), 2), selectedMode = _k[0], setSelectedMode = _k[1];
|
|
89
|
+
var _l = __read(React.useState(false), 2), mouseIn = _l[0], setMouseIn = _l[1];
|
|
90
|
+
var _m = __read(React.useState([0, 0]), 2), mousePosition = _m[0], setMousePosition = _m[1];
|
|
91
|
+
var _o = __read(React.useState([0, 0]), 2), mouseClick = _o[0], setMouseClick = _o[1];
|
|
92
|
+
var _p = __read(React.useState(10), 2), offsetTop = _p[0], setOffsetTop = _p[1];
|
|
93
|
+
var _q = __read(React.useState(10), 2), offsetBottom = _q[0], setOffsetBottom = _q[1];
|
|
94
|
+
var _r = __read(React.useState(5), 2), offsetLeft = _r[0], setOffsetLeft = _r[1];
|
|
95
|
+
var _s = __read(React.useState(5), 2), offsetRight = _s[0], setOffsetRight = _s[1];
|
|
96
|
+
var _t = __read(React.useState(0), 2), heightYFactor = _t[0], setHeightYFactor = _t[1];
|
|
97
|
+
var _u = __read(React.useState(0), 2), heightXLabel = _u[0], setHeightXLabel = _u[1];
|
|
98
|
+
var _v = __read(React.useState(0), 2), heightYLabel = _v[0], setHeightYLabel = _v[1];
|
|
93
99
|
// Constants
|
|
94
100
|
var SVGHeight = props.height - (props.legend === 'bottom' ? (props.legendHeight !== undefined ? props.legendHeight : 50) : 0);
|
|
95
101
|
var SVGWidth = props.width - (props.legend === 'right' ? (props.legendWidth !== undefined ? props.legendWidth : 100) : 0);
|
|
@@ -160,20 +166,36 @@ var Plot = function (props) {
|
|
|
160
166
|
return updated;
|
|
161
167
|
});
|
|
162
168
|
}
|
|
169
|
+
function RegisterSelect(handler) {
|
|
170
|
+
var key = (0, helper_functions_1.CreateGuid)();
|
|
171
|
+
setHandlers(function (fld) { var updated = (0, lodash_1.cloneDeep)(fld); updated.set(key, handler); return updated; });
|
|
172
|
+
return key;
|
|
173
|
+
}
|
|
174
|
+
function RemoveSelect(key) {
|
|
175
|
+
setHandlers(function (fld) { var updated = (0, lodash_1.cloneDeep)(fld); updated.delete(key); return updated; });
|
|
176
|
+
}
|
|
177
|
+
function UpdateSelect(key, handler) {
|
|
178
|
+
setHandlers(function (fld) { var updated = (0, lodash_1.cloneDeep)(fld); updated.set(key, handler); return updated; });
|
|
179
|
+
}
|
|
163
180
|
function GetContext() {
|
|
164
181
|
return {
|
|
165
182
|
XDomain: tDomain,
|
|
166
183
|
XScale: tScale,
|
|
167
184
|
XOffset: tOffset,
|
|
168
185
|
XHover: mouseIn ? (mousePosition[0] - tOffset) / tScale : NaN,
|
|
186
|
+
YHover: mouseIn ? (mousePosition[1] - yOffset) / yScale : NaN,
|
|
169
187
|
YDomain: yDomain,
|
|
170
188
|
YScale: yScale,
|
|
171
189
|
YOffset: yOffset,
|
|
190
|
+
CurrentMode: selectedMode,
|
|
172
191
|
Data: data,
|
|
173
192
|
AddData: AddData,
|
|
174
193
|
RemoveData: RemoveData,
|
|
175
194
|
UpdateData: UpdateData,
|
|
176
|
-
SetLegend: SetLegend
|
|
195
|
+
SetLegend: SetLegend,
|
|
196
|
+
RegisterSelect: RegisterSelect,
|
|
197
|
+
RemoveSelect: RemoveSelect,
|
|
198
|
+
UpdateSelect: UpdateSelect
|
|
177
199
|
};
|
|
178
200
|
}
|
|
179
201
|
function handleMouseWheel(evt) {
|
|
@@ -232,6 +254,8 @@ var Plot = function (props) {
|
|
|
232
254
|
setMouseMode('pan');
|
|
233
255
|
if (selectedMode === 'select' && props.onSelect !== undefined)
|
|
234
256
|
props.onSelect((ptTransform.x - tOffset) / tScale);
|
|
257
|
+
if (handlers.size > 0 && selectedMode === 'select')
|
|
258
|
+
handlers.forEach(function (v) { return (v.onClick !== undefined ? v.onClick((ptTransform.x - tOffset) / tScale, (ptTransform.y - yOffset) / yScale) : null); });
|
|
235
259
|
}
|
|
236
260
|
function handleMouseUp(_) {
|
|
237
261
|
if (mouseMode === 'zoom') {
|
|
@@ -244,18 +268,22 @@ var Plot = function (props) {
|
|
|
244
268
|
setTdomain(function (curr) { return (Math.min(curr[1], t1_1) - Math.max(curr[0], t0_1)) > 10 ? [Math.max(curr[0], t0_1), Math.min(curr[1], t1_1)] : [curr[0], curr[1]]; });
|
|
245
269
|
}
|
|
246
270
|
setMouseMode('none');
|
|
271
|
+
if (handlers.size > 0 && selectedMode === 'select')
|
|
272
|
+
handlers.forEach(function (v) { return (v.onRelease !== undefined ? v.onRelease((mousePosition[0] - tOffset) / tScale, (mousePosition[1] - yOffset) / yScale) : null); });
|
|
247
273
|
}
|
|
248
274
|
function handleMouseOut(_) {
|
|
249
275
|
setMouseIn(false);
|
|
250
276
|
if (mouseMode === 'pan')
|
|
251
277
|
setMouseMode('none');
|
|
278
|
+
if (handlers.size > 0 && selectedMode === 'select')
|
|
279
|
+
handlers.forEach(function (v) { return (v.onPlotLeave !== undefined ? v.onPlotLeave((mousePosition[0] - tOffset) / tScale, (mousePosition[1] - yOffset) / yScale) : null); });
|
|
252
280
|
}
|
|
253
281
|
function handleMouseIn(_) {
|
|
254
282
|
setMouseIn(true);
|
|
255
283
|
}
|
|
256
284
|
return (React.createElement(GraphContext_1.GraphContext.Provider, { value: GetContext() },
|
|
257
285
|
React.createElement("div", { style: { height: props.height, width: props.width, position: 'relative' } },
|
|
258
|
-
React.createElement("div", { style: { height: SVGHeight, width: SVGWidth, position: '
|
|
286
|
+
React.createElement("div", { style: { height: SVGHeight, width: SVGWidth, position: 'absolute' }, onWheel: handleMouseWheel, onMouseMove: handleMouseMove, onMouseDown: handleMouseDown, onMouseUp: handleMouseUp, onMouseLeave: handleMouseOut, onMouseEnter: handleMouseIn },
|
|
259
287
|
React.createElement("svg", { ref: SVGref, width: SVGWidth, height: SVGHeight, style: SvgStyle, viewBox: "0 0 " + SVGWidth + " " + SVGHeight },
|
|
260
288
|
props.showBorder !== undefined && props.showBorder ? React.createElement("path", { stroke: 'black', d: "M " + offsetLeft + " " + offsetTop + " H " + (SVGWidth - offsetRight) + " V " + (SVGWidth - offsetBottom) + " H " + offsetLeft + " Z" }) : null,
|
|
261
289
|
React.createElement(TimeAxis_1.default, { label: props.Tlabel, offsetBottom: offsetBottom, offsetLeft: offsetLeft, offsetRight: offsetRight, width: SVGWidth, height: SVGHeight, setHeight: setHeightXLabel, heightAxis: heightXLabel }),
|
|
@@ -264,22 +292,35 @@ var Plot = function (props) {
|
|
|
264
292
|
React.createElement("clipPath", { id: "cp-" + guid },
|
|
265
293
|
React.createElement("path", { stroke: 'none', fill: 'none', d: " M " + offsetLeft + "," + (offsetTop - 5) + " H " + (SVGWidth - offsetRight + 5) + " V " + (SVGHeight - offsetBottom) + " H " + offsetLeft + " Z" }))),
|
|
266
294
|
React.createElement("g", { clipPath: 'url(#cp-' + guid + ')' },
|
|
267
|
-
props.children,
|
|
295
|
+
React.Children.map(props.children, function (element) {
|
|
296
|
+
if (!React.isValidElement(element))
|
|
297
|
+
return null;
|
|
298
|
+
if (element.type === Line_1.default || element.type === LineWithThreshold_1.default ||
|
|
299
|
+
element.type === HorizontalMarker_1.default || element.type === VerticalMarker_1.default)
|
|
300
|
+
return element;
|
|
301
|
+
return null;
|
|
302
|
+
}),
|
|
268
303
|
props.showMouse === undefined || props.showMouse ?
|
|
269
304
|
React.createElement("path", { stroke: 'black', style: { strokeWidth: 2, opacity: mouseIn ? 0.8 : 0.0 }, d: "M " + mousePosition[0] + " " + offsetTop + " V " + (SVGHeight - offsetBottom) })
|
|
270
305
|
: null,
|
|
271
306
|
(props.zoom === undefined || props.zoom) && mouseMode === 'zoom' ?
|
|
272
307
|
React.createElement("rect", { fillOpacity: 0.8, fill: 'black', x: Math.min(mouseClick[0], mousePosition[0]), y: offsetTop, width: Math.abs(mouseClick[0] - mousePosition[0]), height: SVGHeight - offsetTop - offsetBottom })
|
|
273
308
|
: null),
|
|
274
|
-
React.createElement(InteractiveButtons_1.default, { showPan: (props.pan === undefined || props.pan), showZoom: props.zoom === undefined || props.zoom, showReset: !(props.pan !== undefined && props.zoom !== undefined && !props.zoom && !props.pan), showSelect: props.onSelect !== undefined, showDownload: props.onDataInspect !== undefined, currentSelection: selectedMode, setSelection: function (s) {
|
|
309
|
+
React.createElement(InteractiveButtons_1.default, { showPan: (props.pan === undefined || props.pan), showZoom: props.zoom === undefined || props.zoom, showReset: !(props.pan !== undefined && props.zoom !== undefined && !props.zoom && !props.pan), showSelect: props.onSelect !== undefined || handlers.size > 0, showDownload: props.onDataInspect !== undefined, currentSelection: selectedMode, setSelection: function (s) {
|
|
275
310
|
if (s === "reset")
|
|
276
311
|
Reset();
|
|
277
312
|
else if (s === "download")
|
|
278
313
|
props.onDataInspect(tDomain);
|
|
279
314
|
else
|
|
280
315
|
setSelectedMode(s);
|
|
281
|
-
}, x: SVGWidth - offsetRight - 12, y: 22 })
|
|
316
|
+
}, x: SVGWidth - offsetRight - 12, y: 22 }, React.Children.map(props.children, function (element) {
|
|
317
|
+
if (!React.isValidElement(element))
|
|
318
|
+
return null;
|
|
319
|
+
if (element.type === Button_1.default)
|
|
320
|
+
return element;
|
|
321
|
+
return null;
|
|
322
|
+
})))),
|
|
282
323
|
props.legend !== undefined && props.legend !== 'hidden' ? React.createElement(Legend_1.default, { location: props.legend, height: props.legendHeight !== undefined ? props.legendHeight : 50, width: props.legendWidth !== undefined ? props.legendWidth : 100, graphWidth: SVGWidth, graphHeight: SVGHeight }) : null)));
|
|
283
324
|
};
|
|
284
325
|
exports.default = Plot;
|
|
285
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGxvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9QbG90LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEseUdBQXlHO0FBQ3pHLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YscUVBQXFFO0FBQ3JFLEVBQUU7QUFDRix3R0FBd0c7QUFDeEcsd0dBQXdHO0FBQ3hHLHNHQUFzRztBQUN0Ryx3RkFBd0Y7QUFDeEYsRUFBRTtBQUNGLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4Ryw0RUFBNEU7QUFDNUUsRUFBRTtBQUNGLDhCQUE4QjtBQUM5Qix3R0FBd0c7QUFDeEcsMEJBQTBCO0FBQzFCLG1EQUFtRDtBQUNuRCxFQUFFO0FBQ0YseUdBQXlHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHekcsNkJBQStCO0FBQy9CLDJEQUFzRDtBQUN0RCwrQ0FBd0U7QUFDeEUsbUVBQTBEO0FBQzFELGlDQUFpQztBQUNqQyx1Q0FBa0M7QUFDbEMseUNBQW9DO0FBQ3BDLG1DQUE4QjtBQXVCOUIsSUFBTSxRQUFRLEdBQXdCO0lBQ2xDLElBQUksRUFBRSxNQUFNO0lBQ1osVUFBVSxFQUFFLE1BQU07SUFDbEIsa0JBQWtCLEVBQUUsTUFBTTtJQUMxQixnQkFBZ0IsRUFBRSxNQUFNO0lBQ3hCLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLFlBQVksRUFBRSxNQUFNO0lBQ3BCLGFBQWEsRUFBRSxNQUFNO0NBQ3hCLENBQUM7QUFFRixJQUFNLElBQUksR0FBb0MsVUFBQyxLQUFLO0lBQ2hEOztNQUVFO0lBQ0YsSUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBTSxJQUFJLENBQUMsQ0FBQztJQUN2QyxJQUFNLElBQUksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQU0sT0FBQSxJQUFBLDZCQUFVLEdBQUUsRUFBWixDQUFZLEVBQUMsRUFBRSxDQUFDLENBQUM7SUFD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
|
|
326
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGxvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9QbG90LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEseUdBQXlHO0FBQ3pHLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YscUVBQXFFO0FBQ3JFLEVBQUU7QUFDRix3R0FBd0c7QUFDeEcsd0dBQXdHO0FBQ3hHLHNHQUFzRztBQUN0Ryx3RkFBd0Y7QUFDeEYsRUFBRTtBQUNGLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4Ryw0RUFBNEU7QUFDNUUsRUFBRTtBQUNGLDhCQUE4QjtBQUM5Qix3R0FBd0c7QUFDeEcsMEJBQTBCO0FBQzFCLG1EQUFtRDtBQUNuRCxFQUFFO0FBQ0YseUdBQXlHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHekcsNkJBQStCO0FBQy9CLDJEQUFzRDtBQUN0RCwrQ0FBbUY7QUFDbkYsbUVBQTBEO0FBQzFELGlDQUEyQztBQUMzQyx1Q0FBa0M7QUFDbEMseUNBQW9DO0FBQ3BDLG1DQUE4QjtBQUM5Qix5REFBb0Q7QUFDcEQsK0JBQTBCO0FBQzFCLG1DQUE4QjtBQUM5Qix1REFBa0Q7QUFDbEQsbURBQThDO0FBdUI5QyxJQUFNLFFBQVEsR0FBd0I7SUFDbEMsSUFBSSxFQUFFLE1BQU07SUFDWixVQUFVLEVBQUUsTUFBTTtJQUNsQixrQkFBa0IsRUFBRSxNQUFNO0lBQzFCLGdCQUFnQixFQUFFLE1BQU07SUFDeEIsZUFBZSxFQUFFLE1BQU07SUFDdkIsYUFBYSxFQUFFLE1BQU07SUFDckIsWUFBWSxFQUFFLE1BQU07SUFDcEIsYUFBYSxFQUFFLE1BQU07Q0FDeEIsQ0FBQztBQUVGLElBQU0sSUFBSSxHQUFvQyxVQUFDLEtBQUs7SUFDaEQ7O01BRUU7SUFDRixJQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFNLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLElBQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFP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QzFFLElBQU0sSUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDO1lBRTFFLFVBQVUsQ0FBQyxVQUFDLElBQUksSUFBSyxPQUFBLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQXhILENBQXdILENBQUMsQ0FBQztTQUNsSjtRQUNELFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVyQixJQUFJLFFBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLFlBQVksS0FBSyxRQUFRO1lBQ2hELFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBQyxDQUFDLElBQUssT0FBQSxDQUFDLENBQUMsQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFFLE1BQU0sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQTNILENBQTJILENBQUMsQ0FBQztJQUUzSixDQUFDO0lBRUQsU0FBUyxjQUFjLENBQUMsQ0FBTTtRQUMxQixVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEIsSUFBSSxTQUFTLEtBQUssS0FBSztZQUNuQixZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekIsSUFBSSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxZQUFZLEtBQUssUUFBUTtZQUNoRCxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRSxNQUFNLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUEvSCxDQUErSCxDQUFDLENBQUM7SUFFL0osQ0FBQztJQUVELFNBQVMsYUFBYSxDQUFDLENBQU07UUFDekIsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFHRCxPQUFPLENBQ0osb0JBQUMsMkJBQVksQ0FBQyxRQUFRLElBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtRQUN0Qyw2QkFBSyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFO1lBQzFFLDZCQUFLLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEVBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxhQUFhO2dCQUMxSyw2QkFBSyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFPLFFBQVEsU0FBSSxTQUFXO29CQUMxRyxLQUFLLENBQUMsVUFBVSxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyw4QkFBTyxNQUFNLEVBQUMsT0FBTyxFQUFDLENBQUMsRUFBRSxPQUFLLFVBQVUsU0FBSSxTQUFTLFlBQU0sUUFBUSxHQUFFLFdBQVcsYUFBTSxRQUFRLEdBQUcsWUFBWSxZQUFNLFVBQVUsT0FBSSxHQUFJLENBQUMsQ0FBQyxDQUFDLElBQUk7b0JBQ2xNLG9CQUFDLGtCQUFRLElBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLFlBQVksR0FBRztvQkFDeE0sb0JBQUMsbUJBQVMsSUFBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFDdEcsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUNwRyxLQUFLLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixHQUFHO29CQUM5SDt3QkFDSSxrQ0FBVSxFQUFFLEVBQUUsS0FBSyxHQUFHLElBQUk7NEJBQ3RCLDhCQUFNLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsUUFBTSxVQUFVLFVBQUksU0FBUyxHQUFHLENBQUMsY0FBTyxRQUFRLEdBQUcsV0FBVyxHQUFHLENBQUMsYUFBTSxTQUFTLEdBQUcsWUFBWSxZQUFNLFVBQVUsT0FBSSxHQUFJLENBQ3hKLENBQ1I7b0JBRVAsMkJBQUcsUUFBUSxFQUFFLFVBQVUsR0FBRyxJQUFJLEdBQUcsR0FBRzt3QkFDaEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxVQUFDLE9BQU87NEJBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztnQ0FDOUIsT0FBTyxJQUFJLENBQUM7NEJBQ2hCLElBQUssT0FBbUMsQ0FBQyxJQUFJLEtBQUssY0FBSSxJQUFLLE9BQW1DLENBQUMsSUFBSSxLQUFLLDJCQUFpQjtnQ0FDeEgsT0FBbUMsQ0FBQyxJQUFJLEtBQUssMEJBQWdCLElBQUssT0FBbUMsQ0FBQyxJQUFJLEtBQUssd0JBQWM7Z0NBRTFILE9BQU8sT0FBTyxDQUFDOzRCQUNuQixPQUFPLElBQUksQ0FBQzt3QkFDaEIsQ0FBQyxDQUFDO3dCQUNQLEtBQUssQ0FBQyxTQUFTLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQzs0QkFDOUMsOEJBQU0sTUFBTSxFQUFDLE9BQU8sRUFBQyxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUEsQ0FBQyxDQUFDLEdBQUcsQ0FBQSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLE9BQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFJLFNBQVMsWUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFFLEdBQUk7NEJBQ3JKLENBQUMsQ0FBQyxJQUFJO3dCQUNULENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLFNBQVMsS0FBSyxNQUFNLENBQUMsQ0FBQzs0QkFDL0QsOEJBQU0sV0FBVyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUFHLFNBQVMsR0FBRyxZQUFZLEdBQUk7NEJBQ3RNLENBQUMsQ0FBQyxJQUFJLENBQ1Y7b0JBQ0gsb0JBQUMsNEJBQWtCLElBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUNsRSxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLElBQUksRUFDaEQsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQzlGLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUSxLQUFLLFNBQVMsSUFBSSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsRUFDN0QsWUFBWSxFQUFFLEtBQUssQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUMvQyxnQkFBZ0IsRUFBRSxZQUFZLEVBQzlCLFlBQVksRUFBRSxVQUFDLENBQUM7NEJBQ2QsSUFBSSxDQUFDLEtBQUssT0FBTztnQ0FBRSxLQUFLLEVBQUUsQ0FBQztpQ0FDdEIsSUFBSSxDQUFDLEtBQUssVUFBVTtnQ0FBRSxLQUFLLENBQUMsYUFBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDOztnQ0FDcEQsZUFBZSxDQUFDLENBQTRCLENBQUMsQ0FBQTt3QkFBQSxDQUFDLEVBQ3JELENBQUMsRUFBRSxRQUFRLEdBQUcsV0FBVyxHQUFHLEVBQUUsRUFDOUIsQ0FBQyxFQUFFLEVBQUUsSUFDSixLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQUMsT0FBTzt3QkFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDOzRCQUM5QixPQUFPLElBQUksQ0FBQzt3QkFDaEIsSUFBSyxPQUFtQyxDQUFDLElBQUksS0FBSyxnQkFBTTs0QkFDcEQsT0FBTyxPQUFPLENBQUM7d0JBQ25CLE9BQU8sSUFBSSxDQUFDO29CQUNoQixDQUFDLENBQUMsQ0FDWSxDQUVyQixDQUNKO1lBQ1AsS0FBSyxDQUFDLE1BQU0sS0FBTSxTQUFTLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLG9CQUFDLGdCQUFNLElBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFBLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFBLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsU0FBUyxHQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbFIsQ0FDYSxDQUMzQixDQUFBO0FBRUosQ0FBQyxDQUFBO0FBR0Qsa0JBQWUsSUFBSSxDQUFDIn0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { LineStyle } from './GraphContext';
|
|
3
|
+
export interface IProps {
|
|
4
|
+
start?: number;
|
|
5
|
+
end?: number;
|
|
6
|
+
Value: number;
|
|
7
|
+
setValue?: (x: number) => void;
|
|
8
|
+
color: string;
|
|
9
|
+
lineStyle: LineStyle;
|
|
10
|
+
width: number;
|
|
11
|
+
}
|
|
12
|
+
declare function VerticalMarker(props: IProps): JSX.Element;
|
|
13
|
+
export default VerticalMarker;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ******************************************************************************************************
|
|
3
|
+
// Vertica;Marker.tsx - Gbtc
|
|
4
|
+
//
|
|
5
|
+
// Copyright © 2022, Grid Protection Alliance. All Rights Reserved.
|
|
6
|
+
//
|
|
7
|
+
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
|
|
8
|
+
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
|
|
9
|
+
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
|
|
10
|
+
// file except in compliance with the License. You may obtain a copy of the License at:
|
|
11
|
+
//
|
|
12
|
+
// http://opensource.org/licenses/MIT
|
|
13
|
+
//
|
|
14
|
+
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
|
|
15
|
+
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
|
|
16
|
+
// License for the specific language governing permissions and limitations.
|
|
17
|
+
//
|
|
18
|
+
// Code Modification History:
|
|
19
|
+
// ----------------------------------------------------------------------------------------------------
|
|
20
|
+
// 04/29/2022 - C Lackner
|
|
21
|
+
// Generated original version of source code.
|
|
22
|
+
//
|
|
23
|
+
// ******************************************************************************************************
|
|
24
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
25
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
26
|
+
if (!m) return o;
|
|
27
|
+
var i = m.call(o), r, ar = [], e;
|
|
28
|
+
try {
|
|
29
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
30
|
+
}
|
|
31
|
+
catch (error) { e = { error: error }; }
|
|
32
|
+
finally {
|
|
33
|
+
try {
|
|
34
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
35
|
+
}
|
|
36
|
+
finally { if (e) throw e.error; }
|
|
37
|
+
}
|
|
38
|
+
return ar;
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
var React = require("react");
|
|
42
|
+
var GraphContext_1 = require("./GraphContext");
|
|
43
|
+
function VerticalMarker(props) {
|
|
44
|
+
/*
|
|
45
|
+
Marks an X Value vertically as a line.
|
|
46
|
+
*/
|
|
47
|
+
var context = React.useContext(GraphContext_1.GraphContext);
|
|
48
|
+
var _a = __read(React.useState(props.Value), 2), value = _a[0], setValue = _a[1];
|
|
49
|
+
var _b = __read(React.useState(false), 2), isSelected = _b[0], setSelected = _b[1];
|
|
50
|
+
var _c = __read(React.useState(""), 2), guid = _c[0], setGuid = _c[1];
|
|
51
|
+
React.useEffect(function () {
|
|
52
|
+
var id = context.RegisterSelect({
|
|
53
|
+
onClick: onClick,
|
|
54
|
+
onRelease: function (_) { return setSelected(false); },
|
|
55
|
+
onPlotLeave: function (_) { return setSelected(false); }
|
|
56
|
+
});
|
|
57
|
+
setGuid(id);
|
|
58
|
+
return function () { context.RemoveSelect(id); };
|
|
59
|
+
}, []);
|
|
60
|
+
React.useEffect(function () {
|
|
61
|
+
if (guid === "")
|
|
62
|
+
return;
|
|
63
|
+
context.UpdateSelect(guid, {
|
|
64
|
+
onClick: onClick,
|
|
65
|
+
onRelease: function (_) { return setSelected(false); },
|
|
66
|
+
onPlotLeave: function (_) { return setSelected(false); }
|
|
67
|
+
});
|
|
68
|
+
}, [props.width, props.Value, context.XScale]);
|
|
69
|
+
React.useEffect(function () {
|
|
70
|
+
setValue(props.Value);
|
|
71
|
+
}, [props.Value]);
|
|
72
|
+
React.useEffect(function () {
|
|
73
|
+
if (props.setValue === undefined)
|
|
74
|
+
return;
|
|
75
|
+
if (!isSelected && props.Value !== value)
|
|
76
|
+
props.setValue(value);
|
|
77
|
+
}, [isSelected, value]);
|
|
78
|
+
React.useEffect(function () {
|
|
79
|
+
if (context.CurrentMode !== 'select')
|
|
80
|
+
setSelected(false);
|
|
81
|
+
}, [context.CurrentMode]);
|
|
82
|
+
React.useEffect(function () {
|
|
83
|
+
if (isSelected)
|
|
84
|
+
setValue(context.XHover);
|
|
85
|
+
}, [context.XHover]);
|
|
86
|
+
function generateData() {
|
|
87
|
+
var y1 = (props.start === undefined ? context.YDomain[0] : props.start);
|
|
88
|
+
var y2 = (props.end === undefined ? context.YDomain[1] : props.end);
|
|
89
|
+
return "M " + (props.Value * context.XScale + context.XOffset) + " " + (y1 * context.YScale + context.YOffset) + " L " + (props.Value * context.XScale + context.XOffset) + " " + (y2 * context.YScale + context.YOffset);
|
|
90
|
+
}
|
|
91
|
+
function onClick(x, _) {
|
|
92
|
+
var d = Math.abs(props.width / context.XScale);
|
|
93
|
+
if (Math.abs(x - props.Value) < d)
|
|
94
|
+
setSelected(true);
|
|
95
|
+
}
|
|
96
|
+
return (React.createElement("g", null,
|
|
97
|
+
React.createElement("path", { d: generateData(), style: { fill: 'none', strokeWidth: props.width, stroke: props.color, cursor: (props.setValue !== undefined && true) ? 'grab' : 'auto' }, strokeDasharray: props.lineStyle === ':' ? '10,5' : 'none' })));
|
|
98
|
+
}
|
|
99
|
+
exports.default = VerticalMarker;
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmVydGljYWxNYXJrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvVmVydGljYWxNYXJrZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSx5R0FBeUc7QUFDekcsNkJBQTZCO0FBQzdCLEVBQUU7QUFDRixxRUFBcUU7QUFDckUsRUFBRTtBQUNGLHdHQUF3RztBQUN4Ryx3R0FBd0c7QUFDeEcsc0dBQXNHO0FBQ3RHLHdGQUF3RjtBQUN4RixFQUFFO0FBQ0YsMENBQTBDO0FBQzFDLEVBQUU7QUFDRix3R0FBd0c7QUFDeEcsd0dBQXdHO0FBQ3hHLDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsOEJBQThCO0FBQzlCLHdHQUF3RztBQUN4RywwQkFBMEI7QUFDMUIsbURBQW1EO0FBQ25ELEVBQUU7QUFDRix5R0FBeUc7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUd6Ryw2QkFBK0I7QUFDL0IsK0NBQWtFO0FBWWxFLFNBQVMsY0FBYyxDQUFDLEtBQWE7SUFDbkM7O01BRUU7SUFDRixJQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLDJCQUFZLENBQUMsQ0FBQTtJQUN4QyxJQUFBLEtBQUEsT0FBb0IsS0FBSyxDQUFDLFFBQVEsQ0FBUyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUEsRUFBdEQsS0FBSyxRQUFBLEVBQUUsUUFBUSxRQUF1QyxDQUFDO0lBQ3hELElBQUEsS0FBQSxPQUE2QixLQUFLLENBQUMsUUFBUSxDQUFVLEtBQUssQ0FBQyxJQUFBLEVBQXpELFVBQVUsUUFBQSxFQUFFLFdBQVcsUUFBa0MsQ0FBQztJQUM1RCxJQUFBLEtBQUEsT0FBa0IsS0FBSyxDQUFDLFFBQVEsQ0FBUyxFQUFFLENBQUMsSUFBQSxFQUEzQyxJQUFJLFFBQUEsRUFBRSxPQUFPLFFBQThCLENBQUM7SUFFbkQsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNWLElBQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFDOUIsT0FBTyxTQUFBO1lB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
|
package/lib/index.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import Plot from './Plot';
|
|
2
2
|
import Line from './Line';
|
|
3
3
|
import LineWithThreshold from './LineWithThreshold';
|
|
4
|
-
|
|
4
|
+
import HorizontalMarker from './HorizontalMarker';
|
|
5
|
+
import Button from './Button';
|
|
6
|
+
import VerticalMarker from './VerticalMarker';
|
|
7
|
+
export { Plot, Line, LineWithThreshold, Button, HorizontalMarker, VerticalMarker };
|
package/lib/index.js
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LineWithThreshold = exports.Line = exports.Plot = void 0;
|
|
3
|
+
exports.VerticalMarker = exports.HorizontalMarker = exports.Button = exports.LineWithThreshold = exports.Line = exports.Plot = void 0;
|
|
4
4
|
var Plot_1 = require("./Plot");
|
|
5
5
|
exports.Plot = Plot_1.default;
|
|
6
6
|
var Line_1 = require("./Line");
|
|
7
7
|
exports.Line = Line_1.default;
|
|
8
8
|
var LineWithThreshold_1 = require("./LineWithThreshold");
|
|
9
9
|
exports.LineWithThreshold = LineWithThreshold_1.default;
|
|
10
|
-
|
|
10
|
+
var HorizontalMarker_1 = require("./HorizontalMarker");
|
|
11
|
+
exports.HorizontalMarker = HorizontalMarker_1.default;
|
|
12
|
+
var Button_1 = require("./Button");
|
|
13
|
+
exports.Button = Button_1.default;
|
|
14
|
+
var VerticalMarker_1 = require("./VerticalMarker");
|
|
15
|
+
exports.VerticalMarker = VerticalMarker_1.default;
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQTBCO0FBT2xCLGVBUEQsY0FBSSxDQU9DO0FBTlosK0JBQTBCO0FBTVosZUFOUCxjQUFJLENBTU87QUFMbEIseURBQW9EO0FBS2hDLDRCQUxiLDJCQUFpQixDQUthO0FBSnJDLHVEQUFrRDtBQUlILDJCQUp4QywwQkFBZ0IsQ0FJd0M7QUFIL0QsbUNBQThCO0FBR1MsaUJBSGhDLGdCQUFNLENBR2dDO0FBRjdDLG1EQUE4QztBQUVtQix5QkFGMUQsd0JBQWMsQ0FFMEQifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gpa-gemstone/react-graph",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.15",
|
|
4
4
|
"description": "Interactive UI Components for GPA products",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"homepage": "https://github.com/GridProtectionAlliance/gpa-gemstone#readme",
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@types/jest": "^
|
|
39
|
+
"@types/jest": "^27.0.0",
|
|
40
40
|
"@types/lodash": "^4.14.171",
|
|
41
41
|
"@types/mocha": "9.0.0",
|
|
42
42
|
"@types/react": "^17.0.14",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"typescript": "4.4.4"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@gpa-gemstone/gpa-symbols": "0.0.
|
|
52
|
-
"@gpa-gemstone/helper-functions": "0.0.
|
|
51
|
+
"@gpa-gemstone/gpa-symbols": "0.0.20",
|
|
52
|
+
"@gpa-gemstone/helper-functions": "0.0.14",
|
|
53
53
|
"lodash": "^4.17.21",
|
|
54
54
|
"moment": "^2.29.1",
|
|
55
55
|
"react": "^17.0.2"
|