Skip to content
Snippets Groups Projects
Commit be2b7875 authored by Fry, Janell's avatar Fry, Janell
Browse files

IOW-307 Incremental fixes to DV legend pieces, moved common markers.js piece to d3-rendering dir.

parent 29aa1b14
No related branches found
No related tags found
No related merge requests found
......@@ -3,25 +3,17 @@ import { set } from 'd3-collection';
import memoize from 'fast-memoize';
import {createSelector, createStructuredSelector} from 'reselect';
import {defineLineMarker, defineTextOnlyMarker} from '../../d3-rendering/markers';
import {getLayout} from './selectors/layout';
import { defineLineMarker, defineTextOnlyMarker } from '../hydrograph/markers';
import { currentVariableLineSegmentsSelector } from '../hydrograph/drawing-data';
//import { getCurrentTimeSeriesLineSegments } from './selectors/time-series-lines';
import {getCurrentTimeSeriesLineSegments} from './selectors/time-series-lines';
import config from '../../config';
import { mediaQuery } from '../../utils';
import {link} from '../../lib/d3-redux';
const TS_LABEL = {
'current': 'Current: '
};
const tsLineMarkers = function(tsKey, lineClasses) {
let result = [];
console.log('tsKey:'+tsKey);
if (lineClasses.default) {
result.push(defineLineMarker(null, `line-segment ts-${tsKey}`, 'Provisional'));
}
......@@ -51,7 +43,7 @@ const createLegendMarkers = function(displayItems) {
];
if (currentMarkers.length) {
legendMarkers.push([
defineTextOnlyMarker(TS_LABEL.current, null, 'ts-legend-current-text'),
defineTextOnlyMarker('', null, 'ts-legend-current-text'),
...currentMarkers
]);
}
......@@ -139,15 +131,19 @@ export const drawSimpleLegend = function(div, {legendMarkerRows, layout}) {
const uniqueClassesSelector = memoize(tsKey => createSelector(
currentVariableLineSegmentsSelector(tsKey),
//getCurrentTimeSeriesLineSegments(tsKey),
getCurrentTimeSeriesLineSegments,
(tsLineSegments) => {
let classes = [].concat(...Object.values(tsLineSegments)).map((line) => line.classes);
return {
default: classes.some((cls) => !cls.approved && !cls.estimated),
approved: classes.some((cls) => cls.approved),
estimated: classes.some((cls) => cls.estimated),
let result = {
default: false,
approved: false,
estimated: false
};
tsLineSegments.forEach((segment) => {
result.approved = result.approved || segment.approvals.includes('Approved');
result.estimated = result.estimated || segment.approvals.includes('Estimated');
result.default = result.default || segment.approvals.length === 0;
});
return result
}
));
......
......@@ -4,7 +4,7 @@ import memoize from 'fast-memoize';
import {createSelector, createStructuredSelector} from 'reselect';
import {CIRCLE_RADIUS, getMainLayout} from './layout';
import { defineLineMarker, defineTextOnlyMarker, defineRectangleMarker } from './markers';
import { defineLineMarker, defineTextOnlyMarker, defineRectangleMarker } from '../../d3-rendering/markers';
import { currentVariableLineSegmentsSelector, HASH_ID, MASK_DESC } from './drawing-data';
import config from '../../config';
import { getCurrentVariableMedianMetadata } from '../../selectors/median-statistics-selector';
......
import { select, selectAll } from 'd3-selection';
import { drawSimpleLegend, legendMarkerRowsSelector, drawTimeSeriesLegend } from './legend';
import { lineMarker, rectangleMarker, textOnlyMarker } from './markers';
import { lineMarker, rectangleMarker, textOnlyMarker } from '../../d3-rendering/markers';
import {Actions, configureStore} from '../../store';
describe('Legend module', () => {
......
......@@ -39,7 +39,7 @@ import './components/hydrograph/graph-controls.spec';
import './components/hydrograph/index.spec';
import './components/hydrograph/layout.spec';
import './components/hydrograph/legend.spec';
import './components/hydrograph/markers.spec';
import './d3-rendering/markers.spec';
import './components/hydrograph/method-picker.spec';
import './components/hydrograph/parameters.spec';
import './components/hydrograph/scales.spec';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment