diff --git a/android/app/src/main/assets/fonts/INatIcon.ttf b/android/app/src/main/assets/fonts/INatIcon.ttf
index 50c95fa2d..7f84059b8 100644
Binary files a/android/app/src/main/assets/fonts/INatIcon.ttf and b/android/app/src/main/assets/fonts/INatIcon.ttf differ
diff --git a/android/link-assets-manifest.json b/android/link-assets-manifest.json
index 9aa9d3e78..591972043 100644
--- a/android/link-assets-manifest.json
+++ b/android/link-assets-manifest.json
@@ -3,7 +3,7 @@
"data": [
{
"path": "assets/fonts/INatIcon.ttf",
- "sha1": "9f7e321421207b57e03952ef1b9386e8b618f98f"
+ "sha1": "b06f8d8fc228469707681cbbdde665868437d031"
},
{
"path": "assets/fonts/Whitney-Book-Italic.otf",
diff --git a/assets/fonts/INatIcon.ttf b/assets/fonts/INatIcon.ttf
index 50c95fa2d..7f84059b8 100644
Binary files a/assets/fonts/INatIcon.ttf and b/assets/fonts/INatIcon.ttf differ
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 19b952c67..b4f822d9b 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -705,7 +705,7 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/yoga"
SPEC CHECKSUMS:
- boost: 7dcd2de282d72e344012f7d6564d024930a6a440
+ boost: 57d2868c099736d80fcd648bf211b4431e51a558
BVLinearGradient: 880f91a7854faff2df62518f0281afb1c60d49a3
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
FBLazyVector: 9840513ec2766e31fb9e34c2dabb2c4671400fcd
@@ -788,4 +788,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: 77ed9526d4011b245ce5afa1ea331dea4c67d753
-COCOAPODS: 1.14.3
+COCOAPODS: 1.14.2
diff --git a/ios/iNaturalistReactNative.xcodeproj/project.pbxproj b/ios/iNaturalistReactNative.xcodeproj/project.pbxproj
index 3dfe1e31f..7e31f2b17 100644
--- a/ios/iNaturalistReactNative.xcodeproj/project.pbxproj
+++ b/ios/iNaturalistReactNative.xcodeproj/project.pbxproj
@@ -260,7 +260,6 @@
D09FA3A0162844FF80A5EF96 /* Whitney-Medium-Pro.otf */,
374CB22E29943E63005885ED /* Whitney-BookItalic-Pro.otf */,
EE004FD2EC174086A7AB2908 /* inaturalisticons.ttf */,
- CC5CF9E037E74ADF9CF9710B /* INatIcon.ttf */,
62CACBCC44D64A7EB95AACF1 /* Whitney-Book-Pro.otf */,
097C2902AB1249AA9846CED3 /* Whitney-MediumItalic-Pro.otf */,
B397CFD4AEFF474A89A3D27B /* Whitney-Semibold-Pro.otf */,
@@ -979,7 +978,11 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
);
- OTHER_LDFLAGS = "$(inherited)";
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ "-Wl",
+ "-ld_classic",
+ );
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
};
@@ -1048,7 +1051,11 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
);
- OTHER_LDFLAGS = "$(inherited)";
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ "-Wl",
+ "-ld_classic",
+ );
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
diff --git a/ios/link-assets-manifest.json b/ios/link-assets-manifest.json
index 9aa9d3e78..591972043 100644
--- a/ios/link-assets-manifest.json
+++ b/ios/link-assets-manifest.json
@@ -3,7 +3,7 @@
"data": [
{
"path": "assets/fonts/INatIcon.ttf",
- "sha1": "9f7e321421207b57e03952ef1b9386e8b618f98f"
+ "sha1": "b06f8d8fc228469707681cbbdde665868437d031"
},
{
"path": "assets/fonts/Whitney-Book-Italic.otf",
diff --git a/src/components/Explore/Explore.js b/src/components/Explore/Explore.js
index 9c53bdd3d..fe9ec64be 100644
--- a/src/components/Explore/Explore.js
+++ b/src/components/Explore/Explore.js
@@ -35,12 +35,11 @@ const getShadow = shadowColor => getShadowStyle( {
elevation: 6
} );
-// TODO: observers and identifiers icons need replacement
const exploreViewIcon = {
observations: "binoculars",
species: "leaf",
- observers: "person",
- identifiers: "person"
+ observers: "observers",
+ identifiers: "identifiers"
};
type Props = {
@@ -106,24 +105,28 @@ const Explore = ( {
label: t( "Species" ),
text: t( "Organisms-that-are-identified-to-species" ),
buttonText: t( "EXPLORE-SPECIES" ),
+ icon: "species",
value: "species"
},
observations: {
label: t( "Observations" ),
text: t( "Individual-encounters-with-organisms" ),
buttonText: t( "EXPLORE-OBSERVATIONS" ),
+ icon: "observations",
value: "observations"
},
observers: {
label: t( "Observers" ),
text: t( "iNaturalist-users-who-have-observed" ),
buttonText: t( "EXPLORE-OBSERVERS" ),
+ icon: "observers",
value: "observers"
},
identifiers: {
label: t( "Identifiers" ),
text: t( "iNaturalist-users-who-have-left-an-identification" ),
buttonText: t( "EXPLORE-IDENTIFIERS" ),
+ icon: "identifiers",
value: "identifiers"
}
};
diff --git a/src/components/SharedComponents/INatIcon/glyphmap.json b/src/components/SharedComponents/INatIcon/glyphmap.json
index 38ed1c9cd..31e2c18b6 100644
--- a/src/components/SharedComponents/INatIcon/glyphmap.json
+++ b/src/components/SharedComponents/INatIcon/glyphmap.json
@@ -64,49 +64,51 @@
"iconic-reptilia": 61759,
"iconic-unknown": 61760,
"id-agree": 61761,
- "inaturalist": 61762,
- "info-circle-outline": 61763,
- "kebab-menu": 61764,
- "label-outline": 61765,
- "label": 61766,
- "laptop": 61767,
- "layers": 61768,
- "leaf": 61769,
- "list-square": 61770,
- "location-crosshairs": 61771,
- "magnifying-glass": 61772,
- "map-layers": 61773,
- "map-marker-outline": 61774,
- "map": 61775,
- "microphone-circle": 61776,
- "microphone": 61777,
- "noevidence": 61778,
- "notifications-bell": 61779,
- "pause-circle": 61780,
- "pause": 61781,
- "pencil-outline": 61782,
- "pencil": 61783,
- "person": 61784,
- "photos-outline": 61785,
- "photos": 61786,
- "play-circle": 61787,
- "play": 61788,
- "plus-bold": 61789,
- "plus": 61790,
- "pot-outline": 61791,
- "rotate-exclamation": 61792,
- "rotate-right": 61793,
- "rotate": 61794,
- "share": 61795,
- "sliders": 61796,
- "sound-bold-outline": 61797,
- "sound-outline": 61798,
- "sounds": 61799,
- "sparkly-label": 61800,
- "star-bold-outline": 61801,
- "star": 61802,
- "stop": 61803,
- "trash-outline": 61804,
- "trash": 61805,
- "triangle-exclamation": 61806
+ "identifiers": 61762,
+ "inaturalist": 61763,
+ "info-circle-outline": 61764,
+ "kebab-menu": 61765,
+ "label-outline": 61766,
+ "label": 61767,
+ "laptop": 61768,
+ "layers": 61769,
+ "leaf": 61770,
+ "list-square": 61771,
+ "location-crosshairs": 61772,
+ "magnifying-glass": 61773,
+ "map-layers": 61774,
+ "map-marker-outline": 61775,
+ "map": 61776,
+ "microphone-circle": 61777,
+ "microphone": 61778,
+ "noevidence": 61779,
+ "notifications-bell": 61780,
+ "observers": 61781,
+ "pause-circle": 61782,
+ "pause": 61783,
+ "pencil-outline": 61784,
+ "pencil": 61785,
+ "person": 61786,
+ "photos-outline": 61787,
+ "photos": 61788,
+ "play-circle": 61789,
+ "play": 61790,
+ "plus-bold": 61791,
+ "plus": 61792,
+ "pot-outline": 61793,
+ "rotate-exclamation": 61794,
+ "rotate-right": 61795,
+ "rotate": 61796,
+ "share": 61797,
+ "sliders": 61798,
+ "sound-bold-outline": 61799,
+ "sound-outline": 61800,
+ "sounds": 61801,
+ "sparkly-label": 61802,
+ "star-bold-outline": 61803,
+ "star": 61804,
+ "stop": 61805,
+ "trash-outline": 61806,
+ "trash": 61807,
+ "triangle-exclamation": 61808
}
\ No newline at end of file
diff --git a/src/components/SharedComponents/RadioButtonRow.js b/src/components/SharedComponents/RadioButtonRow.js
index 064029bf0..85d07104d 100644
--- a/src/components/SharedComponents/RadioButtonRow.js
+++ b/src/components/SharedComponents/RadioButtonRow.js
@@ -1,13 +1,19 @@
// @flow
import classnames from "classnames";
-import { List2 } from "components/SharedComponents";
+import {
+ Body1,
+ INatIcon,
+ List2
+} from "components/SharedComponents";
+import { View } from "components/styledComponents";
import type { Node } from "react";
-import React from "react";
+import React, { useMemo } from "react";
import { Platform } from "react-native";
import { RadioButton, useTheme } from "react-native-paper";
type Props = {
value: string,
+ icon: string,
checked: boolean,
onPress: Function,
label: string,
@@ -16,7 +22,7 @@ type Props = {
}
const RadioButtonRow = ( {
- value, checked, onPress, label, description, style
+ value, icon, checked, onPress, label, description, style
}: Props ): Node => {
const theme = useTheme( );
@@ -32,6 +38,18 @@ const RadioButtonRow = ( {
textAlignVertical: "center"
};
+ const iconLabel = useMemo( () => (
+
+ {label}
+
+
+ ), [label, icon, theme.colors.secondary] );
+
+ const labelComponent = useMemo( () => {
+ if ( icon ) return iconLabel;
+ return label;
+ }, [icon, iconLabel, label] );
+
return (
(
setChecked( radioValues[radioRow].value )}
label={radioValues[radioRow].label}
diff --git a/src/images/icons/identifiers.svg b/src/images/icons/identifiers.svg
new file mode 100644
index 000000000..e2f8db59f
--- /dev/null
+++ b/src/images/icons/identifiers.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/src/images/icons/observers.svg b/src/images/icons/observers.svg
new file mode 100644
index 000000000..46c6de310
--- /dev/null
+++ b/src/images/icons/observers.svg
@@ -0,0 +1,5 @@
+
+
diff --git a/tests/unit/components/BottomTabNavigator/__snapshots__/CustomTabBar.test.js.snap b/tests/unit/components/BottomTabNavigator/__snapshots__/CustomTabBar.test.js.snap
index f601d0245..6f5f0c4dd 100644
--- a/tests/unit/components/BottomTabNavigator/__snapshots__/CustomTabBar.test.js.snap
+++ b/tests/unit/components/BottomTabNavigator/__snapshots__/CustomTabBar.test.js.snap
@@ -399,7 +399,7 @@ exports[`CustomTabBar should render correctly 1`] = `
]
}
>
-
+
@@ -491,7 +491,7 @@ exports[`CustomTabBar should render correctly 1`] = `
]
}
>
-
+
@@ -582,7 +582,7 @@ exports[`CustomTabBar should render correctly 1`] = `
]
}
>
-
+
diff --git a/tests/unit/components/SharedComponents/ActivityCount/__snapshots__/IdentificationsCount.test.js.snap b/tests/unit/components/SharedComponents/ActivityCount/__snapshots__/IdentificationsCount.test.js.snap
index df70c07f8..2c227e8d2 100644
--- a/tests/unit/components/SharedComponents/ActivityCount/__snapshots__/IdentificationsCount.test.js.snap
+++ b/tests/unit/components/SharedComponents/ActivityCount/__snapshots__/IdentificationsCount.test.js.snap
@@ -1,77 +1,6 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`IdentificationsCount renders default reliably 1`] = `
-
-
-
-
-
- 1
-
-
-`;
-
-exports[`IdentificationsCount renders filled reliably 1`] = `
`;
+exports[`IdentificationsCount renders filled reliably 1`] = `
+
+
+
+
+
+ 1
+
+
+`;
+
exports[`IdentificationsCount renders white reliably 1`] = `
-
+
-
+
-
+
-
+
-
+