@gpa-gemstone/react-graph
Version:
Interactive UI Components for GPA products
43 lines • 4.54 kB
JavaScript
;
// ******************************************************************************************************
// HighlightBox.tsx - Gbtc
//
// Copyright © 2024, Grid Protection Alliance. All Rights Reserved.
//
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
// file except in compliance with the License. You may obtain a copy of the License at:
//
// http://opensource.org/licenses/MIT
//
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
// License for the specific language governing permissions and limitations.
//
// Code Modification History:
// ----------------------------------------------------------------------------------------------------
// 09/03/2024 - Preston Crawford
// Generated original version of source code.
//
// ******************************************************************************************************
Object.defineProperty(exports, "__esModule", { value: true });
var React = require("react");
var GraphContext_1 = require("./GraphContext");
var HighlightBox = function (props) {
var _a, _b, _c;
var context = React.useContext(GraphContext_1.GraphContext);
var axisIndex = GraphContext_1.AxisMap.get(props.Axis);
var y1 = (_a = props.StartY) !== null && _a !== void 0 ? _a : context.YDomain[axisIndex][0];
var y2 = (_b = props.EndY) !== null && _b !== void 0 ? _b : context.YDomain[axisIndex][1];
var xStart = context.XTransformation(props.XVals[0]);
var xEnd = context.XTransformation(props.XVals[1]);
var yStart = context.YTransformation(y1, axisIndex);
var yEnd = context.YTransformation(y2, axisIndex);
var boxHeight = Math.abs(yEnd - yStart);
var boxWidth = Math.abs(xEnd - xStart);
return (React.createElement("g", null,
React.createElement("rect", { x: Math.min(xStart, xEnd), y: Math.min(yStart, yEnd), width: boxWidth, height: boxHeight, fill: props.Color, opacity: props.Opacity, stroke: (_c = props.Stroke) !== null && _c !== void 0 ? _c : "none" })));
};
exports.default = HighlightBox;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGlnaGxpZ2h0Qm94LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0hpZ2hsaWdodEJveC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHlHQUF5RztBQUN6RywyQkFBMkI7QUFDM0IsRUFBRTtBQUNGLHFFQUFxRTtBQUNyRSxFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLHdHQUF3RztBQUN4RyxzR0FBc0c7QUFDdEcsd0ZBQXdGO0FBQ3hGLEVBQUU7QUFDRiwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLHdHQUF3RztBQUN4Ryx3R0FBd0c7QUFDeEcsNEVBQTRFO0FBQzVFLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsd0dBQXdHO0FBQ3hHLGlDQUFpQztBQUNqQyxtREFBbUQ7QUFDbkQsRUFBRTtBQUNGLHlHQUF5Rzs7QUFFekcsNkJBQStCO0FBQy9CLCtDQUF1RTtBQVl2RSxJQUFNLFlBQVksR0FBRyxVQUFDLEtBQWE7O0lBQy9CLElBQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsMkJBQVksQ0FBQyxDQUFDO0lBQy9DLElBQU0sU0FBUyxHQUFHLHNCQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUxQyxJQUFNLEVBQUUsR0FBRyxNQUFBLEtBQUssQ0FBQyxNQUFNLG1DQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekQsSUFBTSxFQUFFLEdBQUcsTUFBQSxLQUFLLENBQUMsSUFBSSxtQ0FBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXZELElBQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXJELElBQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3RELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRXBELElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBQzFDLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBRXpDLE9BQU8sQ0FDSDtRQUNJLDhCQUNJLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFDekIsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUN6QixLQUFLLEVBQUUsUUFBUSxFQUNmLE1BQU0sRUFBRSxTQUFTLEVBQ2pCLElBQUksRUFBRSxLQUFLLENBQUMsS0FBSyxFQUNqQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFDdEIsTUFBTSxFQUFFLE1BQUEsS0FBSyxDQUFDLE1BQU0sbUNBQUksTUFBTSxHQUNoQyxDQUNGLENBQ1AsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGLGtCQUFlLFlBQVksQ0FBQyJ9