Skip to content

feat: update sample app #1400

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 11 commits into
base: dev
Choose a base branch
from
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,10 @@ public String getName() {
}

@ReactMethod
public void sendNativeNonFatal(final String exceptionObject) {
public void sendNativeNonFatal() {
final IBGNonFatalException exception = new IBGNonFatalException.Builder(new IllegalStateException("Test exception"))
.build();
CrashReporting.report(exception);

}

@ReactMethod
Expand Down
118 changes: 59 additions & 59 deletions examples/default/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2023,81 +2023,81 @@ SPEC CHECKSUMS:
GoogleMaps: 032f676450ba0779bd8ce16840690915f84e57ac
hermes-engine: ea92f60f37dba025e293cbe4b4a548fd26b610a0
Instabug: 3e7af445c14d7823fcdecba223f09b5f7c0c6ce1
instabug-reactnative-ndk: d765ac289d56e8896398d02760d9abf2562fc641
instabug-reactnative-ndk: e6f3fd45d6426aa7d37f479f153b5c2bdc1f5eb9
OCMock: 589f2c84dacb1f5aaf6e4cec1f292551fe748e74
RCT-Folly: 4464f4d875961fce86008d45f4ecf6cef6de0740
RCT-Folly: 34124ae2e667a0e5f0ea378db071d27548124321
RCTDeprecation: 726d24248aeab6d7180dac71a936bbca6a994ed1
RCTRequired: a94e7febda6db0345d207e854323c37e3a31d93b
RCTTypeSafety: 28e24a6e44f5cbf912c66dde6ab7e07d1059a205
React: c2830fa483b0334bda284e46a8579ebbe0c5447e
React-callinvoker: 4aecde929540c26b841a4493f70ebf6016691eb8
React-Core: 9c059899f00d46b5cec3ed79251f77d9c469553d
React-CoreModules: 9fac2d31803c0ed03e4ddaa17f1481714f8633a5
React-cxxreact: a979810a3ca4045ceb09407a17563046a7f71494
React-Core: 32a581847d74ce9b5f51d9d11a4e4d132ad61553
React-CoreModules: f53e0674e1747fa41c83bc970e82add97b14ad87
React-cxxreact: 86f3b1692081fd954a0cb27cc90d14674645b64b
React-debug: 3d21f69d8def0656f8b8ec25c0f05954f4d862c5
React-defaultsnativemodule: 2fa2bdb7bd03ff9764facc04aa8520ebf14febae
React-domnativemodule: 986e6fe7569e1383dce452a7b013b6c843a752df
React-Fabric: 3bc7be9e3a6b7581fc828dc2aa041e107fc8ffb8
React-FabricComponents: 668e0cb02344c2942e4c8921a643648faa6dc364
React-FabricImage: 3f44dd25a2b020ed5215d4438a1bb1f3461cd4f1
React-defaultsnativemodule: 2ed121c5a1edeab09cff382b8d9b538260f07848
React-domnativemodule: 4393dd5dd7e13dbe42e69ebc791064a616990f91
React-Fabric: cbf38ceefb1ac6236897abdb538130228e126695
React-FabricComponents: dd4b01c4a60920d8dc15f3b5594c6fe9e7648a38
React-FabricImage: 8b13aedfbd20f349b9b3314baf993c71c02995d9
React-featureflags: ee1abd6f71555604a36cda6476e3c502ca9a48e5
React-featureflagsnativemodule: 7ccc0cd666c2a6257401dceb7920818ac2b42803
React-graphics: d7dd9c8d75cad5af19e19911fa370f78f2febd96
React-hermes: 2069b08e965e48b7f8aa2c0ca0a2f383349ed55d
React-idlecallbacksnativemodule: e211b2099b6dced97959cb58257bab2b2de4d7ef
React-ImageManager: ab7a7d17dd0ff1ef1d4e1e88197d1119da9957ce
React-jserrorhandler: d9e867bb83b868472f3f7601883f0403b3e3942d
React-jsi: d68f1d516e5120a510afe356647a6a1e1f98f2db
React-jsiexecutor: 6366a08a0fc01c9b65736f8deacd47c4a397912a
React-jsinspector: 0ac947411f0c73b34908800cc7a6a31d8f93e1a8
React-jsitracing: 0e8c0aadb1fcec6b1e4f2a66ee3b0da80f0f8615
React-logger: d79b704bf215af194f5213a6b7deec50ba8e6a9b
React-Mapbuffer: b982d5bba94a8bc073bda48f0d27c9b28417fae3
React-microtasksnativemodule: 2b73e68f0462f3175f98782db08896f8501afd20
react-native-background-timer: 17ea5e06803401a379ebf1f20505b793ac44d0fe
react-native-config: 8f7283449bbb048902f4e764affbbf24504454af
react-native-google-maps: 1bcc1f9f13f798fcf230db7fe476f3566d0bc0a3
react-native-maps: 72a8a903f8a1b53e2c777ba79102078ab502e0bf
react-native-netinfo: f0a9899081c185db1de5bb2fdc1c88c202a059ac
react-native-safe-area-context: 142fade490cbebbe428640b8cbdb09daf17e8191
react-native-slider: 4a0f3386a38fc3d2d955efc515aef7096f7d1ee4
react-native-webview: c0b91a4598bd54e9fbc70353aebf1e9bab2e5bb9
React-featureflagsnativemodule: 87b58caf3cd8eca1e53179453789def019af2a65
React-graphics: f5c4cf3abc5aa083e28fe7a866bd95fb3bbbc1e0
React-hermes: cad69ee9a53870cc38e5386889aa7ea81c75b6a1
React-idlecallbacksnativemodule: 445390be0f533797ace18c419eb57110dbfe90d6
React-ImageManager: cb78d7a24f45f8f9a5a1640b52fce4c9f637f98d
React-jserrorhandler: dfe9b96e99a93d4f4858bad66d5bc4813a87a21a
React-jsi: bc1f6073e203fb540edd6d26f926ad041809b443
React-jsiexecutor: 1e8fc70dd9614c3e9d5c3c876b2ea3cd1d931ee4
React-jsinspector: 7544a20e9beac390f1b65d9f0040d97cd55dc198
React-jsitracing: cac972ccc097db399df8044e49add8e5b25cb34a
React-logger: 80d87daf2f98bf95ab668b79062c1e0c3f0c2f8a
React-Mapbuffer: acffb35a53a5f474ede09f082ac609b41aafab2e
React-microtasksnativemodule: 71ca9282bce93b319218d75362c0d646b376eb43
react-native-background-timer: 4638ae3bee00320753647900b21260b10587b6f7
react-native-config: ea75335a7cca1d3326de1da384227e580a7c082e
react-native-google-maps: 98754480fbb4fd5ccd016d0f75a2168a6c84ebc5
react-native-maps: 6f92b1fd37f9421b171c977a42785270703875dc
react-native-netinfo: cec9c4e86083cb5b6aba0e0711f563e2fbbff187
react-native-safe-area-context: 8b8404e70b0cbf2a56428a17017c14c1dcc16448
react-native-slider: fc7f35c082abec47e341dfe43657a1c26f38db2f
react-native-webview: 042b9dfd509d23e7ebc07da06c38a8bcc4679d46
React-nativeconfig: 8c83d992b9cc7d75b5abe262069eaeea4349f794
React-NativeModulesApple: 9f7920224a3b0c7d04d77990067ded14cee3c614
React-NativeModulesApple: 97f606f09fd9840b3868333984d6a0e7bcc425b5
React-perflogger: 59e1a3182dca2cee7b9f1f7aab204018d46d1914
React-performancetimeline: a9d05533ff834c6aa1f532e05e571f3fd2e3c1ed
React-performancetimeline: 3e3f5c5576fe1cc2dd5fcfb1ae2046d5dceda3d7
React-RCTActionSheet: d80e68d3baa163e4012a47c1f42ddd8bcd9672cc
React-RCTAnimation: bde981f6bd7f8493696564da9b3bd05721d3b3cc
React-RCTAppDelegate: 0176615c51476c88212bf3edbafb840d39ea7631
React-RCTBlob: 520a0382bf8e89b9153d60e3c6293e51615834e9
React-RCTFabric: c9da097b19b30017a99498b8c66a69c72f3ce689
React-RCTImage: 90448d2882464af6015ed57c98f463f8748be465
React-RCTLinking: 1bd95d0a704c271d21d758e0f0388cced768d77d
React-RCTNetwork: 218af6e63eb9b47935cc5a775b7a1396cf10ff91
React-RCTSettings: e10b8e42b0fce8a70fbf169de32a2ae03243ef6b
React-RCTText: e7bf9f4997a1a0b45c052d4ad9a0fe653061cf29
React-RCTVibration: 5b70b7f11e48d1c57e0d4832c2097478adbabe93
React-RCTAnimation: 051f0781709c5ed80ba8aa2b421dfb1d72a03162
React-RCTAppDelegate: 106d225d076988b06aa4834e68d1ab754f40cacf
React-RCTBlob: 895eaf8bca2e76ee1c95b479235c6ccebe586fc6
React-RCTFabric: 8d01df202ee9e933f9b5dd44b72ec89a7ac6ee01
React-RCTImage: b73149c0cd54b641dba2d6250aaf168fee784d9f
React-RCTLinking: 23e519712285427e50372fbc6e0265d422abf462
React-RCTNetwork: a5d06d122588031989115f293654b13353753630
React-RCTSettings: 87d03b5d94e6eadd1e8c1d16a62f790751aafb55
React-RCTText: 75e9dd39684f4bcd1836134ac2348efaca7437b3
React-RCTVibration: 033c161fe875e6fa096d0d9733c2e2501682e3d4
React-rendererconsistency: f620c6e003e3c4593e6349d8242b8aeb3d4633f0
React-rendererdebug: e697680f4dd117becc5daf9ea9800067abcee91c
React-rendererdebug: 5be7b834677b2a7a263f4d2545f0d4966cafad82
React-rncore: c22bd84cc2f38947f0414fab6646db22ff4f80cd
React-RuntimeApple: de0976836b90b484305638616898cbc665c67c13
React-RuntimeCore: 3c4a5aa63d9e7a3c17b7fb23f32a72a8bcfccf57
React-RuntimeApple: 71160e6c02efa07d198b84ef5c3a52a7d9d0399d
React-RuntimeCore: f88f79ec995c12af56a265d7505c7630733d9d82
React-runtimeexecutor: ea90d8e3a9e0f4326939858dafc6ab17c031a5d3
React-RuntimeHermes: c6b0afdf1f493621214eeb6517fb859ce7b21b81
React-runtimescheduler: 84f0d876d254bce6917a277b3930eb9bc29df6c7
React-utils: cbe8b8b3d7b2ac282e018e46f0e7b25cdc87c5a0
ReactCodegen: 4bcb34e6b5ebf6eef5cee34f55aa39991ea1c1f1
ReactCommon: 6a952e50c2a4b694731d7682aaa6c79bc156e4ad
RNCClipboard: 2821ac938ef46f736a8de0c8814845dde2dcbdfb
RNGestureHandler: 511250b190a284388f9dd0d2e56c1df76f14cfb8
RNInstabug: f17d4e6c679fbc921f2692c223a1c21395589cc5
RNReanimated: f42a5044d121d68e91680caacb0293f4274228eb
RNScreens: c7ceced6a8384cb9be5e7a5e88e9e714401fd958
RNSVG: 8b1a777d54096b8c2a0fd38fc9d5a454332bbb4d
RNVectorIcons: 6382277afab3c54658e9d555ee0faa7a37827136
React-RuntimeHermes: 49f86328914021f50fd5a5b9756685f5f6d8b4da
React-runtimescheduler: fed70991b942c6df752a59a22081e45fc811b11c
React-utils: 02526ea15628a768b8db9517b6017a1785c734d2
ReactCodegen: 8b5341ecb61898b8bd40a73ebc443c6bf2d14423
ReactCommon: 36d48f542b4010786d6b2bcee615fe5f906b7105
RNCClipboard: 7c3e3b5f71d84ef61690ad377b6c50cf27864ff5
RNGestureHandler: 27a63f2218affdf1a426d56682f9b174904838b3
RNInstabug: 0a8c24545f28e1e4491c5028d94f835d94b913cb
RNReanimated: 8bf536bd3964d10a9bacabf179897e79f6bea34f
RNScreens: 35bb8e81aeccf111baa0ea01a54231390dbbcfd9
RNSVG: 8542aa11770b27563714bbd8494a8436385fc85f
RNVectorIcons: 182892e7d1a2f27b52d3c627eca5d2665a22ee28
SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d
Yoga: 055f92ad73f8c8600a93f0e25ac0b2344c3b07e6

PODFILE CHECKSUM: 837b933596e1616ff02cc206bb17dee4f611fdbc

COCOAPODS: 1.14.0
COCOAPODS: 1.16.2
10 changes: 8 additions & 2 deletions examples/default/src/components/InputField.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ interface InputFieldProps {
maxLength?: number;
accessibilityLabel?: string;
flex?: number;
testID?: string;
}

export const InputField = forwardRef<TextInput, InputFieldProps>(
Expand All @@ -34,6 +35,7 @@ export const InputField = forwardRef<TextInput, InputFieldProps>(
maxLength,
keyboardType,
errorText,
testID,
...restProps
},
ref,
Expand All @@ -43,11 +45,14 @@ export const InputField = forwardRef<TextInput, InputFieldProps>(
<TextInput
ref={ref}
placeholder={placeholder}
placeholderTextColor={'gray'}
style={[styles.textInput, style]}
maxLength={maxLength}
accessible={true}
accessibilityLabel={accessibilityLabel}
keyboardType={keyboardType}
value={value}
testID={testID}
onChangeText={onChangeText}
{...restProps}
/>
Expand All @@ -63,9 +68,10 @@ const styles = StyleSheet.create({
borderWidth: 1,
borderColor: '#ccc',
paddingVertical: 10,
paddingHorizontal: 24,
fontSize: 16,
paddingHorizontal: 16,
fontSize: 12,
borderRadius: 5,
color: 'black',
},
errorText: {
color: '#ff0000',
Expand Down
29 changes: 26 additions & 3 deletions examples/default/src/components/ListTile.tsx
Original file line number Diff line number Diff line change
@@ -1,25 +1,48 @@
import React, { PropsWithChildren } from 'react';

import { Box, HStack, Pressable, Text } from 'native-base';
import { Box, HStack, Pressable, Text, VStack } from 'native-base';

interface ListTileProps extends PropsWithChildren {
title: string;
subtitle?: string;
onPress?: () => void;
testID?: string;
truncateSubtitle?: boolean;
}

export const ListTile: React.FC<ListTileProps> = ({ title, onPress, children }) => {
export const ListTile: React.FC<ListTileProps> = ({
title,
subtitle,
onPress,
children,
testID,
truncateSubtitle = false,
}) => {
return (
<Pressable
onPress={onPress}
p="4"
rounded="2"
testID={testID}
shadow="1"
accessible={true}
borderBottomWidth="1"
borderColor="coolGray.300"
bg="coolGray.100"
_pressed={{ bg: 'coolGray.200' }}>
<HStack justifyContent="space-between" alignItems="center">
<Text>{title}</Text>
<VStack space={2}>
<Text>{title}</Text>
{subtitle && (
<Text
fontSize="xs"
color="coolGray.500"
numberOfLines={truncateSubtitle ? 1 : undefined}
ellipsizeMode={truncateSubtitle ? 'tail' : undefined}>
{subtitle}
</Text>
)}
</VStack>
<Box width={160}>{children}</Box>
</HStack>
</Pressable>
Expand Down
5 changes: 4 additions & 1 deletion examples/default/src/components/PlatformListTile.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,15 @@ interface PlatformListTileProps extends PropsWithChildren {
title: string;
onPress?: () => void;
platform?: 'ios' | 'android';
testID?: string;
}

export const PlatformListTile: React.FC<PlatformListTileProps> = ({
title,
onPress,
platform,
children,
testID,
}) => {
if (Platform.OS === platform || !platform) {
return (
Expand All @@ -25,7 +27,8 @@ export const PlatformListTile: React.FC<PlatformListTileProps> = ({
borderBottomWidth="1"
borderColor="coolGray.300"
bg="coolGray.100"
_pressed={{ bg: 'coolGray.200' }}>
_pressed={{ bg: 'coolGray.200' }}
testID={testID}>
<HStack justifyContent="space-between" alignItems="center">
<Text>{title}</Text>
<Box width={160}>{children}</Box>
Expand Down
11 changes: 9 additions & 2 deletions examples/default/src/components/Select.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,17 @@ interface SelectItem<T> {
label: string;
value: T;
isInitial?: boolean;
testID?: string;
}

interface SelectProps<T> {
label: string;
items: SelectItem<T>[];
onValueChange: (value: T) => void;
testID?: string;
}

export function Select<T>({ label, items, onValueChange }: SelectProps<T>) {
export function Select<T>({ label, items, onValueChange, testID }: SelectProps<T>) {
const initialItem = items.find((i) => i.isInitial) ?? items[0];
const [selectedItem, setSelectedItem] = useState(initialItem);

Expand All @@ -35,7 +37,12 @@ export function Select<T>({ label, items, onValueChange }: SelectProps<T>) {
endIcon: <CheckIcon size="4" />,
}}>
{items.map((item) => (
<NativeBaseSelect.Item key={item.label} label={item.label} value={item.label} />
<NativeBaseSelect.Item
key={item.label}
label={item.label}
value={item.label}
testID={testID}
/>
))}
</NativeBaseSelect>
);
Expand Down
Loading