/** * WordPress dependencies */ const { __ } = wp.i18n; const { Component, Fragment } = wp.element; const { ExternalLink, PanelBody, TextControl } = wp.components; class ColumnSettings extends Component { constructor() { super( ...arguments ); } componentDidMount() { /** * We use deep-clean to remove all empty properties which causes a major issue with Series Settings. * So add a dummy property to make sure `series` object isn't empty. * Should be removed before saving the data. */ const settings = this.props.chart['visualizer-settings']; Object.keys( settings.series ) .map( i => { if ( settings.series[i] !== undefined ) { settings.series[i].temp = 1; } } ); this.props.edit( settings ); } render() { const settings = this.props.chart['visualizer-settings']; const series = this.props.chart['visualizer-series']; return ( { Object.keys( settings.series ) .map( ( i ) => { return ( { ( 'date' === series[i].type || 'datetime' === series[i].type || 'timeofday' === series[i].type ) && ( { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.to = e; this.props.edit( settings ); } } /> { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.from = e; this.props.edit( settings ); } } />

{ __( 'You can find more info on ' ) } { __( 'date and time formats here.' ) }

) } { ( 'number' === series[i].type ) && ( { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.thousands = e; this.props.edit( settings ); } } /> { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.decimal = e; this.props.edit( settings ); } } /> { if ( 100 < e ) { return; } if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.precision = e; this.props.edit( settings ); } } /> { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.prefix = e; this.props.edit( settings ); } } /> { if ( ! settings.series[i].format ) { settings.series[i].format = {}; } settings.series[i].format.suffix = e; this.props.edit( settings ); } } /> ) }
); } ) }
); } } export default ColumnSettings;