From 31badda07664a461cbf162b8601cdef2738d31ea Mon Sep 17 00:00:00 2001 From: Ed Brett Date: Wed, 16 Jan 2019 11:55:08 +0100 Subject: [PATCH 1/3] remove fill from menu svgs --- app/javascript/assets/icons/biodiversity.svg | 2 +- app/javascript/assets/icons/climate.svg | 2 +- app/javascript/assets/icons/explore.svg | 2 +- app/javascript/assets/icons/forest-change.svg | 2 +- app/javascript/assets/icons/land-cover.svg | 2 +- app/javascript/assets/icons/land-use.svg | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/javascript/assets/icons/biodiversity.svg b/app/javascript/assets/icons/biodiversity.svg index c3b615b030..71bfc21723 100755 --- a/app/javascript/assets/icons/biodiversity.svg +++ b/app/javascript/assets/icons/biodiversity.svg @@ -1,5 +1,5 @@ biodiversity - + diff --git a/app/javascript/assets/icons/climate.svg b/app/javascript/assets/icons/climate.svg index 45df571405..0b39a4978c 100755 --- a/app/javascript/assets/icons/climate.svg +++ b/app/javascript/assets/icons/climate.svg @@ -1,5 +1,5 @@ climate - + diff --git a/app/javascript/assets/icons/explore.svg b/app/javascript/assets/icons/explore.svg index 1889644bc9..5d0f273ee7 100755 --- a/app/javascript/assets/icons/explore.svg +++ b/app/javascript/assets/icons/explore.svg @@ -1,5 +1,5 @@ explore - + diff --git a/app/javascript/assets/icons/forest-change.svg b/app/javascript/assets/icons/forest-change.svg index 4be42b2bcc..ac32707c9a 100755 --- a/app/javascript/assets/icons/forest-change.svg +++ b/app/javascript/assets/icons/forest-change.svg @@ -1,5 +1,5 @@ forest-change - + diff --git a/app/javascript/assets/icons/land-cover.svg b/app/javascript/assets/icons/land-cover.svg index 1635f4fedb..775595e7f4 100755 --- a/app/javascript/assets/icons/land-cover.svg +++ b/app/javascript/assets/icons/land-cover.svg @@ -1,5 +1,5 @@ land-cover - + diff --git a/app/javascript/assets/icons/land-use.svg b/app/javascript/assets/icons/land-use.svg index 15d1fed12f..5db6950bde 100755 --- a/app/javascript/assets/icons/land-use.svg +++ b/app/javascript/assets/icons/land-use.svg @@ -1,5 +1,5 @@ landuse - + From 57aeec3c75b1c21134f0628bea619ec9aa3a7beb Mon Sep 17 00:00:00 2001 From: Ed Brett Date: Wed, 16 Jan 2019 11:57:49 +0100 Subject: [PATCH 2/3] fixes for HMR with reducer code splitting --- .../recent-imagery/recent-imagery.js | 2 +- .../components/modals/meta/meta-actions.js | 5 ++- .../country-data-provider/actions.js | 15 ++++--- .../providers/geostore-provider/actions.js | 5 ++- .../providers/ptw-provider/actions.js | 44 ++++++++++--------- .../whitelists-provider-actions.js | 10 +++-- 6 files changed, 46 insertions(+), 35 deletions(-) diff --git a/app/javascript/components/maps/main-map/components/recent-imagery/recent-imagery.js b/app/javascript/components/maps/main-map/components/recent-imagery/recent-imagery.js index 531092ffe7..9bf1ef6c7b 100644 --- a/app/javascript/components/maps/main-map/components/recent-imagery/recent-imagery.js +++ b/app/javascript/components/maps/main-map/components/recent-imagery/recent-imagery.js @@ -89,7 +89,7 @@ class RecentImageryContainer extends PureComponent { }); } // get the rest of the tiles - if (!dataStatus.haveAllData && !loadingMoreTiles && active) { + if (dataStatus && !dataStatus.haveAllData && !loadingMoreTiles && active) { getMoreTiles({ sources, dataStatus, diff --git a/app/javascript/components/modals/meta/meta-actions.js b/app/javascript/components/modals/meta/meta-actions.js index 374fc26632..cf7b545b61 100644 --- a/app/javascript/components/modals/meta/meta-actions.js +++ b/app/javascript/components/modals/meta/meta-actions.js @@ -9,9 +9,10 @@ export const setModalMeta = createThunkAction( 'setModalMeta', (metaKey, metaWhitelist, tableWhitelist, customCitation) => ( dispatch, - state + getState ) => { - if (!state().modalMeta.loading) { + const { modalMeta } = getState(); + if (modalMeta && !modalMeta.loading) { dispatch( setModalMetaLoading({ loading: true, error: false, open: true }) ); diff --git a/app/javascript/providers/country-data-provider/actions.js b/app/javascript/providers/country-data-provider/actions.js index 4c472ae0a7..6c6441a616 100644 --- a/app/javascript/providers/country-data-provider/actions.js +++ b/app/javascript/providers/country-data-provider/actions.js @@ -49,8 +49,9 @@ export const getCountries = createThunkAction( export const getRegions = createThunkAction( 'getRegions', - country => (dispatch, state) => { - if (!state().countryData.isRegionsLoading) { + country => (dispatch, getState) => { + const { countryData } = getState(); + if (countryData && !countryData.isRegionsLoading) { dispatch(setRegionsLoading(true)); getRegionsProvider(country) .then(response => { @@ -74,8 +75,9 @@ export const getRegions = createThunkAction( export const getSubRegions = createThunkAction( 'getSubRegions', - ({ adm0, adm1 }) => (dispatch, state) => { - if (!state().countryData.isSubRegionsLoading) { + ({ adm0, adm1 }) => (dispatch, getState) => { + const { countryData } = getState(); + if (countryData && !countryData.isSubRegionsLoading) { dispatch(setSubRegionsLoading(true)); getSubRegionsProvider(adm0, adm1) .then(subRegions => { @@ -100,8 +102,9 @@ export const getSubRegions = createThunkAction( export const getCountryLinks = createThunkAction( 'getCountryLinks', - () => (dispatch, state) => { - if (!state().countryData.isCountryLinksLoading) { + () => (dispatch, getState) => { + const { countryData } = getState(); + if (countryData && !countryData.isCountryLinksLoading) { dispatch(setCountryLinksLoading(true)); getCountryLinksProvider() .then(response => { diff --git a/app/javascript/providers/geostore-provider/actions.js b/app/javascript/providers/geostore-provider/actions.js index f2289a76e2..a5a800746c 100644 --- a/app/javascript/providers/geostore-provider/actions.js +++ b/app/javascript/providers/geostore-provider/actions.js @@ -7,8 +7,9 @@ export const setGeostore = createAction('setGeostore'); export const getGeostore = createThunkAction( 'getGeostore', - ({ type, adm0, adm1, adm2, token }) => (dispatch, state) => { - if (!state().geostore.loading) { + ({ type, adm0, adm1, adm2, token }) => (dispatch, getState) => { + const { geostore } = getState(); + if (geostore && !geostore.loading) { dispatch(setGeostoreLoading({ loading: true, error: false })); getGeostoreProvider({ type, adm0, adm1, adm2, token }) .then(response => { diff --git a/app/javascript/providers/ptw-provider/actions.js b/app/javascript/providers/ptw-provider/actions.js index 8422fb2aa5..cab77c624d 100644 --- a/app/javascript/providers/ptw-provider/actions.js +++ b/app/javascript/providers/ptw-provider/actions.js @@ -7,24 +7,28 @@ import { getPTWProvider } from 'services/places-to-watch'; export const setPTWLoading = createAction('setPTWLoading'); export const setPTW = createAction('setPTW'); -export const getPTW = createThunkAction('getPTW', () => (dispatch, state) => { - if (!state().ptw.loading) { - dispatch(setPTWLoading(true)); - getPTWProvider() - .then(response => { - const { rows } = response.data; - if (rows && !!rows.length) { - const ptw = uniqBy(rows, 'cartodb_id').map(p => ({ - ...p, - bbox: reverseLatLng(JSON.parse(p.bbox).coordinates[0]) - })); - dispatch(setPTW(uniqBy(ptw, 'cartodb_id'))); - } - dispatch(setPTWLoading(false)); - }) - .catch(error => { - dispatch(setPTWLoading(false)); - console.info(error); - }); +export const getPTW = createThunkAction( + 'getPTW', + () => (dispatch, getState) => { + const { ptw } = getState(); + if (ptw && !ptw.loading) { + dispatch(setPTWLoading(true)); + getPTWProvider() + .then(response => { + const { rows } = response.data; + if (rows && !!rows.length) { + const ptwResponse = uniqBy(rows, 'cartodb_id').map(p => ({ + ...p, + bbox: reverseLatLng(JSON.parse(p.bbox).coordinates[0]) + })); + dispatch(setPTW(uniqBy(ptwResponse, 'cartodb_id'))); + } + dispatch(setPTWLoading(false)); + }) + .catch(error => { + dispatch(setPTWLoading(false)); + console.info(error); + }); + } } -}); +); diff --git a/app/javascript/providers/whitelists-provider/whitelists-provider-actions.js b/app/javascript/providers/whitelists-provider/whitelists-provider-actions.js index cd8c58a03a..1951f00887 100644 --- a/app/javascript/providers/whitelists-provider/whitelists-provider-actions.js +++ b/app/javascript/providers/whitelists-provider/whitelists-provider-actions.js @@ -17,8 +17,9 @@ export const setRegionWhitelist = createAction('setRegionWhitelist'); export const getCountryWhitelist = createThunkAction( 'getCountryWhitelist', - adm0 => (dispatch, state) => { - if (!state().whitelists.countriesLoading) { + adm0 => (dispatch, getState) => { + const { whitelists } = getState(); + if (whitelists && !whitelists.countriesLoading) { dispatch(setCountryWhitelistLoading(true)); getCountryWhitelistProvider(adm0) .then(response => { @@ -36,8 +37,9 @@ export const getCountryWhitelist = createThunkAction( export const getRegionWhitelist = createThunkAction( 'getRegionWhitelist', - ({ adm0, adm1, adm2 }) => (dispatch, state) => { - if (!state().whitelists.regionsLoading) { + ({ adm0, adm1, adm2 }) => (dispatch, getState) => { + const { whitelists } = getState(); + if (whitelists && !whitelists.regionsLoading) { dispatch(setRegionWhitelistLoading(true)); getRegionWhitelistProvider(adm0, adm1, adm2) .then(response => { From d14e0d64c7ee1f5f50fe6ee85ab246028d9e959e Mon Sep 17 00:00:00 2001 From: Ed Brett Date: Wed, 16 Jan 2019 12:13:14 +0100 Subject: [PATCH 3/3] fix analysis panel not rendering on mobile --- .../components/maps/components/menu/menu-component.jsx | 4 +++- app/javascript/components/modals/modal/modal-component.jsx | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/javascript/components/maps/components/menu/menu-component.jsx b/app/javascript/components/maps/components/menu/menu-component.jsx index d4b1b66b51..f6df270c28 100644 --- a/app/javascript/components/maps/components/menu/menu-component.jsx +++ b/app/javascript/components/maps/components/menu/menu-component.jsx @@ -140,7 +140,9 @@ class MapMenu extends PureComponent { setMenuSettings={setMenuSettings} onToggleLayer={this.onToggleLayer} {...props} - {...rest} + {...menuSection === 'datasets' && { + ...rest + }} /> )} diff --git a/app/javascript/components/modals/modal/modal-component.jsx b/app/javascript/components/modals/modal/modal-component.jsx index 144e9669e4..993dc26f9a 100644 --- a/app/javascript/components/modals/modal/modal-component.jsx +++ b/app/javascript/components/modals/modal/modal-component.jsx @@ -46,7 +46,7 @@ class CustomModal extends PureComponent { } CustomModal.propTypes = { - isOpen: PropTypes.bool.isRequired, + isOpen: PropTypes.bool, onRequestClose: PropTypes.func.isRequired, contentLabel: PropTypes.string, customStyles: PropTypes.object,