diff --git a/src/pages/organizations/[organizationid].js b/src/pages/organizations/[organizationid].js index 9075ba696..3e2cee680 100644 --- a/src/pages/organizations/[organizationid].js +++ b/src/pages/organizations/[organizationid].js @@ -434,7 +434,9 @@ export default function Organization(props) { @@ -455,7 +457,9 @@ export default function Organization(props) { letterSpacing: '0.04em', }} dangerouslySetInnerHTML={{ - __html: marked.parse(organization.mission || 'NO DATA YET'), + __html: marked.parse(organization.mission || 'NO DATA YET', { + breaks: true, + }), }} /> diff --git a/src/pages/planters/[planterid].js b/src/pages/planters/[planterid].js index 0106d52d4..6fa70f440 100644 --- a/src/pages/planters/[planterid].js +++ b/src/pages/planters/[planterid].js @@ -489,7 +489,9 @@ export default function Planter(props) { > diff --git a/src/pages/tokens/[tokenid].js b/src/pages/tokens/[tokenid].js index 651639233..ec1e52a27 100644 --- a/src/pages/tokens/[tokenid].js +++ b/src/pages/tokens/[tokenid].js @@ -75,6 +75,7 @@ export default function Token(props) { log.warn('map:', mapContext); useEffect(() => { + let cancelled = false; async function reload() { // manipulate the map // const { map } = mapContext; @@ -122,6 +123,7 @@ export default function Token(props) { wallet: wallet.name, }); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -135,6 +137,7 @@ export default function Token(props) { log.warn('set treeid filter', tree.id); await map.setFilters({}); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -145,6 +148,7 @@ export default function Token(props) { } } reload(); + return () => { cancelled = true; }; }, [mapContext, token]); log.warn('token:', token); diff --git a/src/pages/top.js b/src/pages/top.js index 7367f3c51..14c0958bd 100644 --- a/src/pages/top.js +++ b/src/pages/top.js @@ -48,6 +48,7 @@ function Top(props) { React.useEffect(() => { async function reload() { if (mapContext.map) { + await mapContext.map.clearSelection(); await mapContext.map.setFilters({}); const bounds = pathResolver.getBounds(router); if (bounds) { diff --git a/src/pages/trees/[treeid].js b/src/pages/trees/[treeid].js index df562a00a..34bdb0fbc 100644 --- a/src/pages/trees/[treeid].js +++ b/src/pages/trees/[treeid].js @@ -106,6 +106,7 @@ export default function Tree({ // draw(); // }, [mapContext.map, tree.lat, tree.lon]); useEffect(() => { + let cancelled = false; async function reload() { async function focusTree(map2, tree2) { const currentView = map2.getCurrentView(); @@ -131,6 +132,7 @@ export default function Tree({ userid: context.id, }); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -143,6 +145,7 @@ export default function Tree({ map_name: organization.map_name, }); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -156,6 +159,7 @@ export default function Tree({ log.warn('set treeid filter', tree.id); await map.setFilters({}); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -163,18 +167,10 @@ export default function Tree({ }; map.selectTree(treeDataForMap); } - - // // select the tree - // const treeDataForMap = { - // ...tree, - // lat: parseFloat(tree.lat.toString()), - // lon: parseFloat(tree.lon.toString()), - // }; - // mapContext.map.selectTree(treeDataForMap); - // // log.warn('filter of map:', mapContext.map.getFilters()); } } reload(); + return () => { cancelled = true; }; }, [map, tree.lat, tree.lon]); log.warn(planter, 'planter'); diff --git a/src/pages/v2/captures/[captureid].js b/src/pages/v2/captures/[captureid].js index 0c56101ad..2d60eb480 100644 --- a/src/pages/v2/captures/[captureid].js +++ b/src/pages/v2/captures/[captureid].js @@ -114,6 +114,7 @@ export default function Capture({ // draw(); // }, [mapContext.map, tree.lat, tree.lon]); useEffect(() => { + let cancelled = false; async function reload() { async function focusTree(map2, tree2) { const currentView = map2.getCurrentView(); @@ -139,6 +140,7 @@ export default function Capture({ userid: context.id, }); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -151,6 +153,7 @@ export default function Capture({ map_name: organization.map_name, }); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -164,6 +167,7 @@ export default function Capture({ log.warn('set treeid filter', tree.id); await map.setFilters({}); await focusTree(map, tree); + if (cancelled) return; const treeDataForMap = { ...tree, lat: parseFloat(tree.lat.toString()), @@ -171,18 +175,10 @@ export default function Capture({ }; map.selectTree(treeDataForMap); } - - // // select the tree - // const treeDataForMap = { - // ...tree, - // lat: parseFloat(tree.lat.toString()), - // lon: parseFloat(tree.lon.toString()), - // }; - // mapContext.map.selectTree(treeDataForMap); - // // log.warn('filter of map:', mapContext.map.getFilters()); } } reload(); + return () => { cancelled = true; }; }, [map, tree.lat, tree.lon]); log.warn(grower, 'grower'); diff --git a/src/pages/wallets/[walletid].js b/src/pages/wallets/[walletid].js index f06bfe6d0..daff2e8e8 100644 --- a/src/pages/wallets/[walletid].js +++ b/src/pages/wallets/[walletid].js @@ -374,7 +374,9 @@ export default function Wallet(props) { sx={{ mt: [2.5, 5] }} variant="body2" dangerouslySetInnerHTML={{ - __html: marked.parse(wallet.about || 'NO DATA YET'), + __html: marked.parse(wallet.about || 'NO DATA YET', { + breaks: true, + }), }} />