@figlinq/react-chart-editor
Version:
plotly.js chart editor react component UI
2 lines • 3.22 kB
JavaScript
function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==typeof i?i:i+""}function _toPrimitive(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}import{Component}from"react";import PropTypes from"prop-types";import{connectToContainer}from"../../lib";import Field from"./Field";import RadioBlocks from"../widgets/RadioBlocks";import NumericInput from"../widgets/NumericInput";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export class UnconnectedHoverLabelNameLength extends Component{constructor(props){super(props);this.state={currentOption:this.getCurrentOption(props)};this.onOptionChange=this.onOptionChange.bind(this)}getCurrentOption(props){return props.fullValue>0?"clip":props.fullValue===0?"hide":"no-clip"}UNSAFE_componentWillReceiveProps(nextProps){if(nextProps.fullValue!==this.props.fullValue){this.setState({currentOption:this.getCurrentOption(nextProps)})}}onOptionChange(option){if(this.state.currentOption!=="clip"&&option==="clip"){this.props.updatePlot(15);return}if(option==="no-clip"){this.props.updatePlot(-1);return}if(option==="hide"){this.props.updatePlot(0);return}}render(){const _=this.context.localize;return _jsxs(Field,_objectSpread(_objectSpread({},this.props),{},{children:[_jsx(RadioBlocks,{activeOption:this.state.currentOption,options:[{label:_("Clip To"),value:"clip"},{label:_("No Clip"),value:"no-clip"},{label:_("Hide"),value:"hide"}],onOptionChange:this.onOptionChange}),_jsx("div",{style:{height:"10px",width:"100%"}}),this.state.currentOption==="clip"?_jsx(NumericInput,{value:this.props.fullValue,onChange:this.props.updatePlot,onUpdate:this.props.updatePlot,units:"px"}):null]}))}}UnconnectedHoverLabelNameLength.propTypes=_objectSpread({fullValue:PropTypes.number,updatePlot:PropTypes.func},Field.propTypes);UnconnectedHoverLabelNameLength.contextTypes={localize:PropTypes.func};UnconnectedHoverLabelNameLength.displayName="UnconnectedHoverLabelNameLength";export default connectToContainer(UnconnectedHoverLabelNameLength,{modifyPlotProps:(props,context,plotProps)=>{const{container}=plotProps;plotProps.isVisible=container.hoverinfo&&container.hoverinfo.includes("name")||container.hovertemplate||container.hovertemplate===" "}});
//# sourceMappingURL=HoverLabelNameLength.js.map