Skip to content

Commit 1f630eb

Browse files
authored
Merge pull request #4971 from wri/feat/FLAG-1314
FLAG-1314: remove Planet option from satellite imagery dropdown
2 parents eda1965 + 70a9e65 commit 1f630eb

File tree

6 files changed

+4
-207
lines changed

6 files changed

+4
-207
lines changed

components/map/basemaps.js

-15
Original file line numberDiff line numberDiff line change
@@ -28,21 +28,6 @@ export default {
2828
labelsGroup: 'labels-dark',
2929
mapStyle: 'mapbox://styles/resourcewatch/ckgrx1ak30npt19o10xxkeqli',
3030
},
31-
planet: {
32-
label: 'Planet satellite imagery',
33-
description: 'Monthly high resolution basemaps (tropics)',
34-
value: 'planet',
35-
color: '#131620',
36-
baseStyle: false,
37-
caveat: '(tropics)',
38-
image: satelliteImage,
39-
hasSettings: true,
40-
infoModal: 'planet_basemap',
41-
basemapGroup: 'basemap-dark',
42-
labelsGroup: 'labels-dark',
43-
mapStyle: 'mapbox://styles/resourcewatch/ckgrx1ak30npt19o10xxkeqli',
44-
url: `${PROXIES.PLANET_TILES}/{name}/gmap/{z}/{x}/{y}/?proc={color}`,
45-
},
4631
satellite: {
4732
label: 'Google satellite imagery',
4833
description: 'Highest resolution imagery 1-3 years old (global)',

components/satellite-basemaps/component.jsx

-19
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,12 @@ function handleTitle(basemap) {
2222
<span className="label">{basemap?.label || ''}</span>
2323
{basemap?.caveat && <span className="caveat">{basemap.caveat}</span>}
2424
</span>
25-
{basemap?.value === 'planet' &&
26-
basemap?.active &&
27-
basemap?.planetPeriod?.period && (
28-
<span className="title-active-value">
29-
{basemap.planetPeriod.period}
30-
</span>
31-
)}
3225
</>
3326
);
3427
}
3528

3629
const SatelliteBasemaps = ({
3730
className,
38-
planetPeriods,
3931
landsatYear,
4032
basemaps,
4133
activeBasemap,
@@ -76,11 +68,6 @@ const SatelliteBasemaps = ({
7668
setOpen(!activeBasemap?.active);
7769
setMapBasemap({
7870
value: activeBasemap?.active ? 'default' : activeBasemap?.value,
79-
...(activeBasemap?.value === 'planet' && {
80-
color: '',
81-
name: planetPeriods[planetPeriods.length - 1].value,
82-
imageType: planetPeriods[planetPeriods.length - 1].imageType,
83-
}),
8471
...(activeBasemap?.value === 'landsat' && {
8572
year: landsatYear,
8673
}),
@@ -101,11 +88,6 @@ const SatelliteBasemaps = ({
10188
e.stopPropagation();
10289
setMapBasemap({
10390
value,
104-
...(value === 'planet' && {
105-
color: '',
106-
name: planetPeriods[planetPeriods.length - 1].value,
107-
imageType: planetPeriods[planetPeriods.length - 1].imageType,
108-
}),
10991
...(value === 'landsat' && {
11092
year: landsatYear,
11193
}),
@@ -224,7 +206,6 @@ const SatelliteBasemaps = ({
224206
SatelliteBasemaps.propTypes = {
225207
className: PropTypes.string,
226208
isTropics: PropTypes.bool,
227-
planetPeriods: PropTypes.arrayOf(PropTypes.object),
228209
landsatYear: PropTypes.number.isRequired,
229210
setMainMapSettings: PropTypes.func.isRequired,
230211
setMapBasemap: PropTypes.func.isRequired,

components/satellite-basemaps/planet-selectors.js

-66
This file was deleted.

components/satellite-basemaps/selectors.js

+4-25
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ import find from 'lodash/find';
44

55
import { getBasemaps, getBasemap } from 'components/map/selectors';
66

7-
import { getPeriodOptions } from './settings/planet-menu/selectors';
8-
97
import { getSelectedYear } from './settings/landsat-menu/selectors';
108

119
const getLocation = (state) => state.location && state.location;
@@ -33,18 +31,10 @@ export const getActiveDynoBasemap = createSelector(
3331
getDynoBasemaps,
3432
getBasemap,
3533
isTropics,
36-
getPeriodOptions,
3734
getMapBasemapSettings,
3835
getBasemaps,
3936
],
40-
(
41-
location,
42-
basemaps,
43-
activeBasemap,
44-
tropics,
45-
planetPeriods,
46-
mapBasemapSettings
47-
) => {
37+
(location, basemaps, activeBasemap, tropics, mapBasemapSettings) => {
4838
const isDashboard = location.pathname.includes('/dashboards/');
4939
if (!basemaps || !activeBasemap) {
5040
return null;
@@ -55,17 +45,10 @@ export const getActiveDynoBasemap = createSelector(
5545
if (dynoBasemap) {
5646
return {
5747
...dynoBasemap,
58-
...(isDashboard &&
59-
dynoBasemap.value !== 'planet' && {
60-
...defaultBasemap,
61-
}),
48+
...(isDashboard && {
49+
...defaultBasemap,
50+
}),
6251
settings: mapBasemapSettings,
63-
...(dynoBasemap &&
64-
dynoBasemap?.value === 'planet' && {
65-
planetPeriod: planetPeriods?.length
66-
? planetPeriods.find((p) => p.value === mapBasemapSettings.name)
67-
: null,
68-
}),
6952
active: true,
7053
};
7154
}
@@ -74,9 +57,6 @@ export const getActiveDynoBasemap = createSelector(
7457
return {
7558
...defaultBasemap,
7659
settings: mapBasemapSettings,
77-
...(defaultBasemap.value === 'planet' && {
78-
planetPeriod: planetPeriods?.length ? planetPeriods[0] : null,
79-
}),
8060
active: false,
8161
};
8262
}
@@ -87,7 +67,6 @@ export const getActiveDynoBasemap = createSelector(
8767

8868
export const getBasemapProps = createStructuredSelector({
8969
activeBasemap: getActiveDynoBasemap,
90-
planetPeriods: getPeriodOptions,
9170
landsatYear: getSelectedYear,
9271
basemaps: getDynoBasemaps,
9372
isTropics,
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
import { createStructuredSelector, createSelector } from 'reselect';
2-
import isEmpty from 'lodash/isEmpty';
3-
4-
import { getPlanetBasemaps } from '../../planet-selectors';
52

63
const COLOR_OPTIONS = [
74
{
@@ -16,80 +13,9 @@ const COLOR_OPTIONS = [
1613
},
1714
];
1815

19-
const selectBasemapSelected = (state) => {
20-
return state?.map?.settings?.basemap?.name;
21-
};
2216
const selectBasemapColorSelected = (state) =>
2317
state?.map?.settings?.basemap?.color;
2418

25-
const selectBasemapImageTypeSelected = (state) =>
26-
state?.map?.settings?.basemap?.color === '' ? 'visual' : 'analytic';
27-
28-
const serializePlanetTile = ({
29-
label,
30-
period,
31-
name,
32-
imageType,
33-
sortOrder,
34-
year,
35-
proc,
36-
} = {}) => ({
37-
label,
38-
period,
39-
year,
40-
imageType,
41-
sortOrder,
42-
proc,
43-
value: name,
44-
});
45-
46-
// Returns the opposite default option, used when switching image types
47-
const getDefaultPeriodOption = createSelector(
48-
[selectBasemapImageTypeSelected, getPlanetBasemaps],
49-
(selected, planetBasemaps) => {
50-
if (isEmpty(planetBasemaps)) return null;
51-
const oppositeImage = selected === 'visual' ? 'analytic' : 'visual';
52-
const periodOptions = planetBasemaps
53-
.map((tile) => serializePlanetTile(tile))
54-
.filter((bm) => bm.imageType === oppositeImage);
55-
return periodOptions[0];
56-
}
57-
);
58-
59-
export const getPeriodOptions = createSelector(
60-
[selectBasemapImageTypeSelected, getPlanetBasemaps],
61-
(selected, planetBasemaps) => {
62-
if (isEmpty(planetBasemaps)) return null;
63-
const periodOptions = planetBasemaps
64-
?.map((tile) => serializePlanetTile(tile))
65-
.filter((bm) => bm.imageType === selected)
66-
.reverse();
67-
return periodOptions;
68-
}
69-
);
70-
71-
export const getPeriodSelected = createSelector(
72-
[selectBasemapSelected, getPeriodOptions],
73-
(selected, periodOptions) => {
74-
if (isEmpty(periodOptions)) return null;
75-
const period = periodOptions?.find((r) => r.value === selected);
76-
if (!period) return periodOptions[periodOptions.length - 1];
77-
return period;
78-
}
79-
);
80-
81-
export const getPeriodSelectedIndex = createSelector(
82-
[getPeriodOptions, selectBasemapSelected],
83-
(periodOptions, selected) => {
84-
if (isEmpty(periodOptions)) return null;
85-
const periodIndex = periodOptions?.findIndex((r) => r.value === selected);
86-
if (periodIndex === -1) {
87-
return periodOptions.length - 1;
88-
}
89-
return periodIndex;
90-
}
91-
);
92-
9319
export const getColorOptions = createSelector([], () => COLOR_OPTIONS);
9420

9521
export const getColorSelected = createSelector(
@@ -100,10 +26,6 @@ export const getColorSelected = createSelector(
10026
);
10127

10228
export default createStructuredSelector({
103-
periodOptions: getPeriodOptions,
104-
periodSelected: getPeriodSelected,
105-
periodSelectedIndex: getPeriodSelectedIndex,
10629
colorOptions: getColorOptions,
10730
colorSelected: getColorSelected,
108-
defaultPeriodOption: getDefaultPeriodOption,
10931
});

layouts/dashboards/components/mini-legend/component.jsx

-4
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import lowerCase from 'lodash/lowerCase';
88
import Button from 'components/ui/button';
99
import Icon from 'components/ui/icon';
1010
import Tip from 'components/ui/tip';
11-
import SatelliteBasemaps from 'components/satellite-basemaps';
1211

1312
import linkIcon from 'assets/icons/link.svg?sprite';
1413

@@ -142,9 +141,6 @@ class MiniLegend extends PureComponent {
142141
</Button>
143142
</div>
144143
</div>
145-
<div className="satellite-basemaps-wrapper">
146-
<SatelliteBasemaps />
147-
</div>
148144
</div>
149145
) : null;
150146
}

0 commit comments

Comments
 (0)