@nodeject/ui-components
Version:
UI library for non-trivial components
32 lines (31 loc) • 1.67 kB
JavaScript
/**
* A menu with visualization options for the HierarchyChart
*/
import * as React from 'react';
import { useState } from 'react';
import { Checkbox } from 'antd';
import styles from './WidgetMenu.module.less';
export var WidgetMenu = function (props) {
var onEditModeToggle = props.onEditModeToggle, onPanzoomToggle = props.onPanzoomToggle, showEditModeButton = props.showEditModeButton, showPanzoomButton = props.showPanzoomButton;
var _a = useState(props.enablePanzoom), enablePanzoom = _a[0], setEnablePanzoom = _a[1];
var _b = useState(props.enableEditMode), enableEditMode = _b[0], setEnableEditMode = _b[1];
React.useEffect(function () {
onPanzoomToggle(enablePanzoom);
}, [enablePanzoom]);
React.useEffect(function () {
onEditModeToggle(enableEditMode);
}, [enableEditMode]);
var onChangePanzoom = function (e) {
setEnablePanzoom(e.target.checked);
};
var onChangeEditMode = function (e) {
setEnableEditMode(e.target.checked);
};
var panzoomButton = showPanzoomButton && (React.createElement(Checkbox, { onChange: onChangePanzoom, defaultChecked: props.enablePanzoom }, "Move"));
var editModeButton = showEditModeButton && (React.createElement(Checkbox, { onChange: onChangeEditMode, defaultChecked: props.enableEditMode }, "Edit"));
props.debugMessages &&
console.log("\n ===============================\n ================================\n WidgetMenu\n " + JSON.stringify(props) + "\n ");
return (React.createElement("div", { className: styles.widgetMenu },
panzoomButton,
editModeButton));
};