diff --git a/SOSAlertApp/.bundle/config b/SOSAlertApp/.bundle/config new file mode 100644 index 000000000..848943bb5 --- /dev/null +++ b/SOSAlertApp/.bundle/config @@ -0,0 +1,2 @@ +BUNDLE_PATH: "vendor/bundle" +BUNDLE_FORCE_RUBY_PLATFORM: 1 diff --git a/SOSAlertApp/.eslintrc.js b/SOSAlertApp/.eslintrc.js new file mode 100644 index 000000000..187894b6a --- /dev/null +++ b/SOSAlertApp/.eslintrc.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@react-native', +}; diff --git a/SOSAlertApp/.gitignore b/SOSAlertApp/.gitignore new file mode 100644 index 000000000..d5ae45669 --- /dev/null +++ b/SOSAlertApp/.gitignore @@ -0,0 +1,74 @@ +# OSX +# +.DS_Store + +# Xcode +# +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +*.xccheckout +*.moved-aside +DerivedData +*.hmap +*.ipa +*.xcuserstate +**/.xcode.env.local + +# Android/IntelliJ +# +build/ +.idea +.gradle +local.properties +*.iml +*.hprof +.cxx/ +*.keystore +!debug.keystore + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/ + +**/fastlane/report.xml +**/fastlane/Preview.html +**/fastlane/screenshots +**/fastlane/test_output + +# Bundle artifact +*.jsbundle + +# Ruby / CocoaPods +**/Pods/ +/vendor/bundle/ + +# Temporary files created by Metro to check the health of the file watcher +.metro-health-check* + +# testing +/coverage + +# Yarn +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/sdks +!.yarn/versions diff --git a/SOSAlertApp/.prettierrc.js b/SOSAlertApp/.prettierrc.js new file mode 100644 index 000000000..2b540746a --- /dev/null +++ b/SOSAlertApp/.prettierrc.js @@ -0,0 +1,7 @@ +module.exports = { + arrowParens: 'avoid', + bracketSameLine: true, + bracketSpacing: false, + singleQuote: true, + trailingComma: 'all', +}; diff --git a/SOSAlertApp/.watchmanconfig b/SOSAlertApp/.watchmanconfig new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/SOSAlertApp/.watchmanconfig @@ -0,0 +1 @@ +{} diff --git a/SOSAlertApp/App.tsx b/SOSAlertApp/App.tsx new file mode 100644 index 000000000..5a3ba4a08 --- /dev/null +++ b/SOSAlertApp/App.tsx @@ -0,0 +1,26 @@ + +import React from 'react'; +import { NavigationContainer } from '@react-navigation/native'; +import { createStackNavigator } from '@react-navigation/stack'; +import HomeScreen from './src/screens/HomeScreen'; +import SOSAlertScreen from './src/screens/SOSAlertScreen'; + +type RootStackParamList = { + Home: undefined; + SOSAlert: undefined; +}; + +const Stack = createStackNavigator(); + +const App: React.FC = () => { + return ( + + + + + + + ); +}; + +export default App; diff --git a/SOSAlertApp/Gemfile b/SOSAlertApp/Gemfile new file mode 100644 index 000000000..8d72c37a8 --- /dev/null +++ b/SOSAlertApp/Gemfile @@ -0,0 +1,9 @@ +source 'https://rubygems.org' + +# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version +ruby ">= 2.6.10" + +# Cocoapods 1.15 introduced a bug which break the build. We will remove the upper +# bound in the template on Cocoapods with next React Native release. +gem 'cocoapods', '>= 1.13', '< 1.15' +gem 'activesupport', '>= 6.1.7.5', '< 7.1.0' diff --git a/SOSAlertApp/HomeScreen.tsx b/SOSAlertApp/HomeScreen.tsx new file mode 100644 index 000000000..81ed89045 --- /dev/null +++ b/SOSAlertApp/HomeScreen.tsx @@ -0,0 +1,32 @@ + +import React from 'react'; +import { View, Button, StyleSheet } from 'react-native'; +import { StackNavigationProp } from '@react-navigation/stack'; +import { RootStackParamList } from '../../App'; + +type HomeScreenNavigationProp = StackNavigationProp; + +type Props = { + navigation: HomeScreenNavigationProp; +}; + +const HomeScreen: React.FC = ({ navigation }) => { + return ( + +