diff --git a/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Data.jsx b/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Data.jsx index 5e75da48..f4bd8580 100644 --- a/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Data.jsx +++ b/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Data.jsx @@ -43,7 +43,7 @@ const CategoricalFilter = ({ value, index, items, onUpdateFilterValue }) => { */ return a.position - b.position }); - return sortedItems.map(v => -1} + return sortedItems.map(v => {v.value}} checked={value.indexOf(v.id) > -1} onChange={e => { onUpdateFilterValue(v.id, index) }} />) @@ -230,6 +230,7 @@ export class DataLayerSetting extends Component { filters, featureJoinAttribute, apiJoinAttribute, + extraTooltipColumns = [], type, useCentroidPoint, useBreaks, @@ -343,6 +344,38 @@ export class DataLayerSetting extends Component { options={allDimensions} /> } + + + {app !== 'csv' && + +

+ {__("Additional fields to expose as tooltip variables, without adding them as dimensions.")} +

+
+ {allDimensions && allDimensions.filter(d => d.value !== 'none' + && d.value !== apiJoinAttribute && d.value !== patternDiscriminator).map(d => ( + + {d.label}} + checked={extraTooltipColumns.indexOf(d.value) > -1} + onChange={(checked) => { + const newValue = checked + ? [...extraTooltipColumns, d.value] + : extraTooltipColumns.filter(v => v !== d.value); + onChangeProperty("extraTooltipColumns", newValue) + }} + /> + + ))} + +
} +
+
{"{" + m.value + "}"}

)} + {extraTooltipColumns && extraTooltipColumns.length > 0 && extraTooltipColumns.map(col => { + const dim = allDimensions ? allDimensions.find(d => d.value === col) : null + return (

{(dim ? dim.label : col) + ": " + "{" + col + "}"}

) + })} , + {app != 'csv' && { */ return a.position - b.position }); - return sortedItems.map(v => -1} + return sortedItems.map(v => {v.value}} checked={value.indexOf(v.id) > -1} onChange={e => { onUpdateFilterValue(v.id, index) }} />) @@ -214,6 +214,7 @@ export class DataLayerSetting extends Component { filters, featureJoinAttribute, apiJoinAttribute, + extraTooltipColumns = [], type, useCentroidPoint, useBreaks, @@ -363,6 +364,45 @@ export class DataLayerSetting extends Component { , + + {app != 'csv' && + +

+ {__("Additional fields to expose as tooltip variables, without adding them as dimensions.")} +

+
+ {allDimensions && allDimensions.filter(d => d.value !== 'none' + && d.value !== flowOrigin && d.value !== flowDestination).map(d => ( + + {d.label}} + checked={extraTooltipColumns.indexOf(d.value) > -1} + onChange={(checked) => { + const newValue = checked + ? [...extraTooltipColumns, d.value] + : extraTooltipColumns.filter(v => v !== d.value); + onChangeProperty("extraTooltipColumns", newValue) + }} + /> + + ))} + {extraTooltipColumns && extraTooltipColumns.length > 0 && extraTooltipColumns.map(col => { + const dim = allDimensions ? allDimensions.find(d => d.value === col) : null + return (

{(dim ? dim.label : col) + ": " + "{" + col + "}"}

) + })} +
} +
, {app != 'csv' && } + + + {app != 'csv' && + +

+ {__("Additional fields to expose as tooltip variables, without adding them as dimensions.")} +

+
+ {allDimensions && allDimensions.filter(d => d.value !== 'none' + && d.value !== apiJoinAttribute && d.value !== dimension2).map(d => ( + + {d.label}} + checked={extraTooltipColumns.indexOf(d.value) > -1} + onChange={(checked) => { + const newValue = checked + ? [...extraTooltipColumns, d.value] + : extraTooltipColumns.filter(v => v !== d.value); + onChangeProperty("extraTooltipColumns", newValue) + }} + /> + + ))} + +
} +
+
+ {"{" + dimension2 + "}"}

} + + {extraTooltipColumns && extraTooltipColumns.length > 0 && extraTooltipColumns.map(col => { + const dim = allDimensions ? allDimensions.find(d => d.value === col) : null + return (

{(dim ? dim.label : col) + ": " + "{" + col + "}"}

) + })} , {app != 'csv' && diff --git a/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Model.js b/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Model.js index a89e57ba..aa12e6d3 100644 --- a/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Model.js +++ b/plugins/wp-react-blocks-plugin/blocks/d3Map/layers/Model.js @@ -54,6 +54,7 @@ export const Model = { }, featureJoinAttribute: 'none', apiJoinAttribute: 'none', + extraTooltipColumns: [], useCentroidPoint: true, patternDiscriminator: 'none', patternDiscriminatorLabel: null, diff --git a/plugins/wp-react-blocks-plugin/blocks/map/Tooltips.js b/plugins/wp-react-blocks-plugin/blocks/map/Tooltips.js index 8ff4a520..6e58cc49 100644 --- a/plugins/wp-react-blocks-plugin/blocks/map/Tooltips.js +++ b/plugins/wp-react-blocks-plugin/blocks/map/Tooltips.js @@ -293,10 +293,11 @@ export default class Tooltips extends Component { )}

- {allDimensions && allDimensions.filter(d => d.value !== 'none').map((d) => ( - + {allDimensions && allDimensions.filter(d => d.value !== 'none' + && d.value !== dimension1 && d.value !== dimension2 && d.value !== dimension3).map((d) => ( + {d.label}} checked={extraTooltipColumns.indexOf(d.value) > -1} onChange={(checked) => { const newValue = checked