├── .babelrc ├── .buckconfig ├── .flowconfig ├── .gitattributes ├── .gitignore ├── .watchmanconfig ├── App.js ├── README.md ├── android ├── app │ ├── BUCK │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ ├── assets │ │ └── fonts │ │ │ ├── Blueberry-Pie.ttf │ │ │ ├── Entypo.ttf │ │ │ ├── EvilIcons.ttf │ │ │ ├── FontAwesome.ttf │ │ │ ├── Foundation.ttf │ │ │ ├── Ionicons.ttf │ │ │ ├── Just tell me what regular Italic.otf │ │ │ ├── Just tell me what regular.otf │ │ │ ├── Justtellmewhat-regular.otf │ │ │ ├── MaterialCommunityIcons.ttf │ │ │ ├── MaterialIcons.ttf │ │ │ ├── MyriadPro-Regular.ttf │ │ │ ├── MyriadPro-Semibold.ttf │ │ │ ├── Octicons.ttf │ │ │ ├── Roboto.ttf │ │ │ ├── Roboto_medium.ttf │ │ │ ├── SimpleLineIcons.ttf │ │ │ ├── Zocial.ttf │ │ │ └── rubicon-icon-font.ttf │ │ ├── java │ │ └── com │ │ │ └── ae │ │ │ └── lads │ │ │ ├── MainActivity.java │ │ │ └── MainApplication.java │ │ └── res │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ └── values │ │ ├── strings.xml │ │ └── styles.xml ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── keystores │ ├── BUCK │ └── debug.keystore.properties └── settings.gradle ├── app.json ├── index.js ├── ios ├── LadsBurger-tvOS │ └── Info.plist ├── LadsBurger-tvOSTests │ └── Info.plist ├── LadsBurger.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── LadsBurger-tvOS.xcscheme │ │ └── LadsBurger.xcscheme ├── LadsBurger │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ └── LaunchScreen.xib │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Info.plist │ └── main.m └── LadsBurgerTests │ ├── Info.plist │ └── LadsBurgerTests.m ├── lads.png ├── package-lock.json ├── package.json └── src ├── AppNavigator.js ├── assets.zip ├── assets ├── fonts │ ├── Blueberry-Pie.ttf │ ├── Justtellmewhat-regular.otf │ ├── MyriadPro-Regular.ttf │ ├── MyriadPro-Semibold.ttf │ ├── just-tell-me-what.zip │ └── just-tell-me-what │ │ ├── Just tell me what regular Italic.otf │ │ ├── Just tell me what regular.otf │ │ ├── Read Me.txt │ │ └── sharefonts.net.txt ├── icons │ ├── basket.png │ ├── close.png │ ├── menu.png │ └── search.png └── images │ ├── bg.png │ ├── breakfast.png │ ├── chicken.png │ ├── dessert.png │ ├── drinks.png │ ├── foods │ ├── food1.png │ ├── food2.png │ ├── food3.png │ ├── food4.png │ ├── food5.png │ └── food6.png │ ├── home_bg.png │ ├── login_bg.png │ ├── logo.png │ ├── milkshake.png │ ├── pasta.png │ ├── sides.png │ └── wanyu.png ├── components ├── BaseImagePage.js ├── BottomView.js ├── DropDown.js ├── HeaderView.js ├── HeaderView_Cart.js ├── MyTextInput.js └── SocialButton.js ├── screens ├── Cart.js ├── Customize.js ├── Drawer.js ├── Home.js ├── InsideMenu.js ├── Locations.js ├── MyAccount.js ├── Order.js ├── auth │ ├── Login.js │ └── Signup.js └── payment.js └── styles ├── Cart.js ├── Customize.js ├── Home.js ├── InsideMenu.js ├── Locations.js ├── MyAccount.js ├── Order.js ├── auth └── Signup.js └── payment.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react-native"] 3 | } 4 | -------------------------------------------------------------------------------- /.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- 1 | [ignore] 2 | ; We fork some components by platform 3 | .*/*[.]android.js 4 | 5 | ; Ignore "BUCK" generated dirs 6 | /\.buckd/ 7 | 8 | ; Ignore unexpected extra "@providesModule" 9 | .*/node_modules/.*/node_modules/fbjs/.* 10 | 11 | ; Ignore duplicate module providers 12 | ; For RN Apps installed via npm, "Libraries" folder is inside 13 | ; "node_modules/react-native" but in the source repo it is in the root 14 | .*/Libraries/react-native/React.js 15 | 16 | ; Ignore polyfills 17 | .*/Libraries/polyfills/.* 18 | 19 | ; Ignore metro 20 | .*/node_modules/metro/.* 21 | 22 | [include] 23 | 24 | [libs] 25 | node_modules/react-native/Libraries/react-native/react-native-interface.js 26 | node_modules/react-native/flow/ 27 | node_modules/react-native/flow-github/ 28 | 29 | [options] 30 | emoji=true 31 | 32 | module.system=haste 33 | 34 | munge_underscores=true 35 | 36 | module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub' 37 | 38 | module.file_ext=.js 39 | module.file_ext=.jsx 40 | module.file_ext=.json 41 | module.file_ext=.native.js 42 | 43 | suppress_type=$FlowIssue 44 | suppress_type=$FlowFixMe 45 | suppress_type=$FlowFixMeProps 46 | suppress_type=$FlowFixMeState 47 | 48 | suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) 49 | suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ 50 | suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy 51 | suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError 52 | 53 | [version] 54 | ^0.67.0 55 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # OSX 2 | # 3 | .DS_Store 4 | 5 | # Xcode 6 | # 7 | build/ 8 | *.pbxuser 9 | !default.pbxuser 10 | *.mode1v3 11 | !default.mode1v3 12 | *.mode2v3 13 | !default.mode2v3 14 | *.perspectivev3 15 | !default.perspectivev3 16 | xcuserdata 17 | *.xccheckout 18 | *.moved-aside 19 | DerivedData 20 | *.hmap 21 | *.ipa 22 | *.xcuserstate 23 | project.xcworkspace 24 | 25 | # Android/IntelliJ 26 | # 27 | build/ 28 | .idea 29 | .gradle 30 | local.properties 31 | *.iml 32 | 33 | # node.js 34 | # 35 | node_modules/ 36 | npm-debug.log 37 | yarn-error.log 38 | 39 | # BUCK 40 | buck-out/ 41 | \.buckd/ 42 | *.keystore 43 | 44 | # fastlane 45 | # 46 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 47 | # screenshots whenever they are needed. 48 | # For more information about the recommended setup visit: 49 | # https://docs.fastlane.tools/best-practices/source-control/ 50 | 51 | */fastlane/report.xml 52 | */fastlane/Preview.html 53 | */fastlane/screenshots 54 | 55 | # Bundle artifact 56 | *.jsbundle 57 | -------------------------------------------------------------------------------- /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /App.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { Platform, StyleSheet, Text, View } from 'react-native'; 3 | import { AppNavigator } from './src/AppNavigator'; 4 | 5 | const instructions = Platform.select({ 6 | ios: 'Press Cmd+R to reload,\n' + 7 | 'Cmd+D or shake for dev menu', 8 | android: 'Double tap R on your keyboard to reload,\n' + 9 | 'Shake or press menu button for dev menu', 10 | }); 11 | 12 | type Props = {}; 13 | export default class App extends Component { 14 | render() { 15 | return ( 16 | 17 | ); 18 | } 19 | } 20 | 21 | const styles = StyleSheet.create({ 22 | container: { 23 | flex: 1, 24 | justifyContent: 'center', 25 | alignItems: 'center', 26 | backgroundColor: '#F5FCFF', 27 | }, 28 | welcome: { 29 | fontSize: 20, 30 | textAlign: 'center', 31 | margin: 10, 32 | }, 33 | instructions: { 34 | textAlign: 'center', 35 | color: '#333333', 36 | marginBottom: 5, 37 | }, 38 | }); 39 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | > React Native app 2 | ![lads](lads.png) -------------------------------------------------------------------------------- /android/app/BUCK: -------------------------------------------------------------------------------- 1 | # To learn about Buck see [Docs](https://buckbuild.com/). 2 | # To run your application with Buck: 3 | # - install Buck 4 | # - `npm start` - to start the packager 5 | # - `cd android` 6 | # - `keytool -genkey -v -keystore keystores/debug.keystore -storepass android -alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US"` 7 | # - `./gradlew :app:copyDownloadableDepsToLibs` - make all Gradle compile dependencies available to Buck 8 | # - `buck install -r android/app` - compile, install and run application 9 | # 10 | 11 | lib_deps = [] 12 | 13 | for jarfile in glob(['libs/*.jar']): 14 | name = 'jars__' + jarfile[jarfile.rindex('/') + 1: jarfile.rindex('.jar')] 15 | lib_deps.append(':' + name) 16 | prebuilt_jar( 17 | name = name, 18 | binary_jar = jarfile, 19 | ) 20 | 21 | for aarfile in glob(['libs/*.aar']): 22 | name = 'aars__' + aarfile[aarfile.rindex('/') + 1: aarfile.rindex('.aar')] 23 | lib_deps.append(':' + name) 24 | android_prebuilt_aar( 25 | name = name, 26 | aar = aarfile, 27 | ) 28 | 29 | android_library( 30 | name = "all-libs", 31 | exported_deps = lib_deps, 32 | ) 33 | 34 | android_library( 35 | name = "app-code", 36 | srcs = glob([ 37 | "src/main/java/**/*.java", 38 | ]), 39 | deps = [ 40 | ":all-libs", 41 | ":build_config", 42 | ":res", 43 | ], 44 | ) 45 | 46 | android_build_config( 47 | name = "build_config", 48 | package = "com.ladsburger", 49 | ) 50 | 51 | android_resource( 52 | name = "res", 53 | package = "com.ladsburger", 54 | res = "src/main/res", 55 | ) 56 | 57 | android_binary( 58 | name = "app", 59 | keystore = "//android/keystores:debug", 60 | manifest = "src/main/AndroidManifest.xml", 61 | package_type = "debug", 62 | deps = [ 63 | ":app-code", 64 | ], 65 | ) 66 | -------------------------------------------------------------------------------- /android/app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: "com.android.application" 2 | 3 | import com.android.build.OutputFile 4 | 5 | /** 6 | * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets 7 | * and bundleReleaseJsAndAssets). 8 | * These basically call `react-native bundle` with the correct arguments during the Android build 9 | * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the 10 | * bundle directly from the development server. Below you can see all the possible configurations 11 | * and their defaults. If you decide to add a configuration block, make sure to add it before the 12 | * `apply from: "../../node_modules/react-native/react.gradle"` line. 13 | * 14 | * project.ext.react = [ 15 | * // the name of the generated asset file containing your JS bundle 16 | * bundleAssetName: "index.android.bundle", 17 | * 18 | * // the entry file for bundle generation 19 | * entryFile: "index.android.js", 20 | * 21 | * // whether to bundle JS and assets in debug mode 22 | * bundleInDebug: false, 23 | * 24 | * // whether to bundle JS and assets in release mode 25 | * bundleInRelease: true, 26 | * 27 | * // whether to bundle JS and assets in another build variant (if configured). 28 | * // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants 29 | * // The configuration property can be in the following formats 30 | * // 'bundleIn${productFlavor}${buildType}' 31 | * // 'bundleIn${buildType}' 32 | * // bundleInFreeDebug: true, 33 | * // bundleInPaidRelease: true, 34 | * // bundleInBeta: true, 35 | * 36 | * // whether to disable dev mode in custom build variants (by default only disabled in release) 37 | * // for example: to disable dev mode in the staging build type (if configured) 38 | * devDisabledInStaging: true, 39 | * // The configuration property can be in the following formats 40 | * // 'devDisabledIn${productFlavor}${buildType}' 41 | * // 'devDisabledIn${buildType}' 42 | * 43 | * // the root of your project, i.e. where "package.json" lives 44 | * root: "../../", 45 | * 46 | * // where to put the JS bundle asset in debug mode 47 | * jsBundleDirDebug: "$buildDir/intermediates/assets/debug", 48 | * 49 | * // where to put the JS bundle asset in release mode 50 | * jsBundleDirRelease: "$buildDir/intermediates/assets/release", 51 | * 52 | * // where to put drawable resources / React Native assets, e.g. the ones you use via 53 | * // require('./image.png')), in debug mode 54 | * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", 55 | * 56 | * // where to put drawable resources / React Native assets, e.g. the ones you use via 57 | * // require('./image.png')), in release mode 58 | * resourcesDirRelease: "$buildDir/intermediates/res/merged/release", 59 | * 60 | * // by default the gradle tasks are skipped if none of the JS files or assets change; this means 61 | * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to 62 | * // date; if you have any other folders that you want to ignore for performance reasons (gradle 63 | * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ 64 | * // for example, you might want to remove it from here. 65 | * inputExcludes: ["android/**", "ios/**"], 66 | * 67 | * // override which node gets called and with what additional arguments 68 | * nodeExecutableAndArgs: ["node"], 69 | * 70 | * // supply additional arguments to the packager 71 | * extraPackagerArgs: [] 72 | * ] 73 | */ 74 | 75 | project.ext.react = [ 76 | entryFile: "index.js" 77 | ] 78 | 79 | apply from: "../../node_modules/react-native/react.gradle" 80 | 81 | /** 82 | * Set this to true to create two separate APKs instead of one: 83 | * - An APK that only works on ARM devices 84 | * - An APK that only works on x86 devices 85 | * The advantage is the size of the APK is reduced by about 4MB. 86 | * Upload all the APKs to the Play Store and people will download 87 | * the correct one based on the CPU architecture of their device. 88 | */ 89 | def enableSeparateBuildPerCPUArchitecture = false 90 | 91 | /** 92 | * Run Proguard to shrink the Java bytecode in release builds. 93 | */ 94 | def enableProguardInReleaseBuilds = false 95 | 96 | android { 97 | compileSdkVersion 26 98 | buildToolsVersion "23.0.1" 99 | 100 | defaultConfig { 101 | applicationId "com.ae.lads" 102 | minSdkVersion 16 103 | targetSdkVersion 22 104 | versionCode 1 105 | versionName "1.0" 106 | ndk { 107 | abiFilters "armeabi-v7a", "x86" 108 | } 109 | } 110 | signingConfigs { 111 | release { 112 | if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) { 113 | storeFile file(MYAPP_RELEASE_STORE_FILE) 114 | storePassword MYAPP_RELEASE_STORE_PASSWORD 115 | keyAlias MYAPP_RELEASE_KEY_ALIAS 116 | keyPassword MYAPP_RELEASE_KEY_PASSWORD 117 | } 118 | } 119 | } 120 | splits { 121 | abi { 122 | reset() 123 | enable enableSeparateBuildPerCPUArchitecture 124 | universalApk false // If true, also generate a universal APK 125 | include "armeabi-v7a", "x86" 126 | } 127 | } 128 | buildTypes { 129 | release { 130 | minifyEnabled enableProguardInReleaseBuilds 131 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" 132 | signingConfig signingConfigs.release 133 | } 134 | } 135 | // applicationVariants are e.g. debug, release 136 | applicationVariants.all { variant -> 137 | variant.outputs.each { output -> 138 | // For each separate APK per architecture, set a unique version code as described here: 139 | // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits 140 | def versionCodes = ["armeabi-v7a":1, "x86":2] 141 | def abi = output.getFilter(OutputFile.ABI) 142 | if (abi != null) { // null for the universal-debug, universal-release variants 143 | output.versionCodeOverride = 144 | versionCodes.get(abi) * 1048576 + defaultConfig.versionCode 145 | } 146 | } 147 | } 148 | } 149 | 150 | dependencies { 151 | compile project(':react-native-fbsdk') 152 | compile project(':react-native-svg') 153 | compile fileTree(dir: "libs", include: ["*.jar"]) 154 | compile "com.android.support:appcompat-v7:26.1.0" 155 | compile "com.facebook.react:react-native:+" // From node_modules 156 | } 157 | 158 | // Run this once to be able to run the application with BUCK 159 | // puts all compile dependencies into folder libs for BUCK to use 160 | task copyDownloadableDepsToLibs(type: Copy) { 161 | from configurations.compile 162 | into 'libs' 163 | } 164 | -------------------------------------------------------------------------------- /android/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | 19 | # Disabling obfuscation is useful if you collect stack traces from production crashes 20 | # (unless you are using a system that supports de-obfuscate the stack traces). 21 | -dontobfuscate 22 | 23 | # React Native 24 | 25 | # Keep our interfaces so they can be used by other ProGuard rules. 26 | # See http://sourceforge.net/p/proguard/bugs/466/ 27 | -keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip 28 | -keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters 29 | -keep,allowobfuscation @interface com.facebook.common.internal.DoNotStrip 30 | 31 | # Do not strip any method/class that is annotated with @DoNotStrip 32 | -keep @com.facebook.proguard.annotations.DoNotStrip class * 33 | -keep @com.facebook.common.internal.DoNotStrip class * 34 | -keepclassmembers class * { 35 | @com.facebook.proguard.annotations.DoNotStrip *; 36 | @com.facebook.common.internal.DoNotStrip *; 37 | } 38 | 39 | -keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { 40 | void set*(***); 41 | *** get*(); 42 | } 43 | 44 | -keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } 45 | -keep class * extends com.facebook.react.bridge.NativeModule { *; } 46 | -keepclassmembers,includedescriptorclasses class * { native ; } 47 | -keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } 48 | -keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactProp ; } 49 | -keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactPropGroup ; } 50 | 51 | -dontwarn com.facebook.react.** 52 | 53 | # TextLayoutBuilder uses a non-public Android constructor within StaticLayout. 54 | # See libs/proxy/src/main/java/com/facebook/fbui/textlayoutbuilder/proxy for details. 55 | -dontwarn android.text.StaticLayout 56 | 57 | # okhttp 58 | 59 | -keepattributes Signature 60 | -keepattributes *Annotation* 61 | -keep class okhttp3.** { *; } 62 | -keep interface okhttp3.** { *; } 63 | -dontwarn okhttp3.** 64 | 65 | # okio 66 | 67 | -keep class sun.misc.Unsafe { *; } 68 | -dontwarn java.nio.file.* 69 | -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement 70 | -dontwarn okio.** 71 | -------------------------------------------------------------------------------- /android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 13 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Blueberry-Pie.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Blueberry-Pie.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Entypo.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Entypo.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/EvilIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/EvilIcons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/FontAwesome.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/FontAwesome.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Foundation.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Foundation.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Ionicons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Just tell me what regular Italic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Just tell me what regular Italic.otf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Just tell me what regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Just tell me what regular.otf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Justtellmewhat-regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Justtellmewhat-regular.otf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/MaterialCommunityIcons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/MaterialIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/MaterialIcons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/MyriadPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/MyriadPro-Regular.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/MyriadPro-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/MyriadPro-Semibold.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Octicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Octicons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Roboto.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Roboto.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Roboto_medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Roboto_medium.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/SimpleLineIcons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/SimpleLineIcons.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/Zocial.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/Zocial.ttf -------------------------------------------------------------------------------- /android/app/src/main/assets/fonts/rubicon-icon-font.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/assets/fonts/rubicon-icon-font.ttf -------------------------------------------------------------------------------- /android/app/src/main/java/com/ae/lads/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.ae.lads; 2 | 3 | import com.facebook.react.ReactActivity; 4 | import android.content.Intent; 5 | 6 | public class MainActivity extends ReactActivity { 7 | 8 | /** 9 | * Returns the name of the main component registered from JavaScript. 10 | * This is used to schedule rendering of the component. 11 | */ 12 | @Override 13 | protected String getMainComponentName() { 14 | return "LadsBurger"; 15 | } 16 | 17 | @Override 18 | public void onActivityResult(int requestCode, int resultCode, Intent data) { 19 | super.onActivityResult(requestCode, resultCode, data); 20 | MainApplication.getCallbackManager().onActivityResult(requestCode, resultCode, data); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/ae/lads/MainApplication.java: -------------------------------------------------------------------------------- 1 | package com.ae.lads; 2 | 3 | import android.app.Application; 4 | 5 | import com.facebook.react.ReactApplication; 6 | import com.facebook.reactnative.androidsdk.FBSDKPackage; 7 | import com.horcrux.svg.SvgPackage; 8 | import com.facebook.react.ReactNativeHost; 9 | import com.facebook.react.ReactPackage; 10 | import com.facebook.react.shell.MainReactPackage; 11 | import com.facebook.soloader.SoLoader; 12 | 13 | import com.facebook.FacebookSdk; 14 | import com.facebook.CallbackManager; 15 | import com.facebook.appevents.AppEventsLogger; 16 | 17 | import java.util.Arrays; 18 | import java.util.List; 19 | 20 | public class MainApplication extends Application implements ReactApplication { 21 | 22 | private static CallbackManager mCallbackManager = CallbackManager.Factory.create(); 23 | 24 | protected static CallbackManager getCallbackManager() { 25 | return mCallbackManager; 26 | } 27 | 28 | private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { 29 | @Override 30 | public boolean getUseDeveloperSupport() { 31 | return BuildConfig.DEBUG; 32 | } 33 | 34 | @Override 35 | protected List getPackages() { 36 | return Arrays.asList( 37 | new MainReactPackage(), 38 | new FBSDKPackage(mCallbackManager), 39 | new SvgPackage() 40 | ); 41 | } 42 | 43 | @Override 44 | protected String getJSMainModuleName() { 45 | return "index"; 46 | } 47 | }; 48 | 49 | @Override 50 | public ReactNativeHost getReactNativeHost() { 51 | return mReactNativeHost; 52 | } 53 | 54 | @Override 55 | public void onCreate() { 56 | super.onCreate(); 57 | SoLoader.init(this, /* native exopackage */ false); 58 | FacebookSdk.sdkInitialize(getApplicationContext()); 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | LadsBurger 3 | 189463535239923 4 | fb189463535239923 5 | 6 | -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.2.3' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | mavenLocal() 18 | jcenter() 19 | maven { 20 | // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm 21 | url "$rootDir/../node_modules/react-native/android" 22 | } 23 | // Google's Maven repository 24 | maven { 25 | url 'https://maven.google.com' 26 | } 27 | maven { url "https://jitpack.io" } 28 | } 29 | } 30 | 31 | ext { 32 | compileSdkVersion = 26 33 | buildToolsVersion = '26.0.2' 34 | } 35 | 36 | subprojects { subproject -> 37 | afterEvaluate{ 38 | if((subproject.plugins.hasPlugin('android') || subproject.plugins.hasPlugin('android-library'))) { 39 | android { 40 | compileSdkVersion rootProject.ext.compileSdkVersion 41 | buildToolsVersion rootProject.ext.buildToolsVersion 42 | } 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 14 | 15 | # When configured, Gradle will run in incubating parallel mode. 16 | # This option should only be used with decoupled projects. More details, visit 17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 | # org.gradle.parallel=true 19 | 20 | android.useDeprecatedNdk=true 21 | MYAPP_RELEASE_STORE_FILE=my-release-key.keystore 22 | MYAPP_RELEASE_KEY_ALIAS=my-key-alias 23 | MYAPP_RELEASE_STORE_PASSWORD=123456 24 | MYAPP_RELEASE_KEY_PASSWORD=123456 -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | zipStoreBase=GRADLE_USER_HOME 4 | zipStorePath=wrapper/dists 5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip 6 | -------------------------------------------------------------------------------- /android/gradlew: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ############################################################################## 4 | ## 5 | ## Gradle start up script for UN*X 6 | ## 7 | ############################################################################## 8 | 9 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 10 | DEFAULT_JVM_OPTS="" 11 | 12 | APP_NAME="Gradle" 13 | APP_BASE_NAME=`basename "$0"` 14 | 15 | # Use the maximum available, or set MAX_FD != -1 to use that value. 16 | MAX_FD="maximum" 17 | 18 | warn ( ) { 19 | echo "$*" 20 | } 21 | 22 | die ( ) { 23 | echo 24 | echo "$*" 25 | echo 26 | exit 1 27 | } 28 | 29 | # OS specific support (must be 'true' or 'false'). 30 | cygwin=false 31 | msys=false 32 | darwin=false 33 | case "`uname`" in 34 | CYGWIN* ) 35 | cygwin=true 36 | ;; 37 | Darwin* ) 38 | darwin=true 39 | ;; 40 | MINGW* ) 41 | msys=true 42 | ;; 43 | esac 44 | 45 | # For Cygwin, ensure paths are in UNIX format before anything is touched. 46 | if $cygwin ; then 47 | [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` 48 | fi 49 | 50 | # Attempt to set APP_HOME 51 | # Resolve links: $0 may be a link 52 | PRG="$0" 53 | # Need this for relative symlinks. 54 | while [ -h "$PRG" ] ; do 55 | ls=`ls -ld "$PRG"` 56 | link=`expr "$ls" : '.*-> \(.*\)$'` 57 | if expr "$link" : '/.*' > /dev/null; then 58 | PRG="$link" 59 | else 60 | PRG=`dirname "$PRG"`"/$link" 61 | fi 62 | done 63 | SAVED="`pwd`" 64 | cd "`dirname \"$PRG\"`/" >&- 65 | APP_HOME="`pwd -P`" 66 | cd "$SAVED" >&- 67 | 68 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 69 | 70 | # Determine the Java command to use to start the JVM. 71 | if [ -n "$JAVA_HOME" ] ; then 72 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 73 | # IBM's JDK on AIX uses strange locations for the executables 74 | JAVACMD="$JAVA_HOME/jre/sh/java" 75 | else 76 | JAVACMD="$JAVA_HOME/bin/java" 77 | fi 78 | if [ ! -x "$JAVACMD" ] ; then 79 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 80 | 81 | Please set the JAVA_HOME variable in your environment to match the 82 | location of your Java installation." 83 | fi 84 | else 85 | JAVACMD="java" 86 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 87 | 88 | Please set the JAVA_HOME variable in your environment to match the 89 | location of your Java installation." 90 | fi 91 | 92 | # Increase the maximum file descriptors if we can. 93 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then 94 | MAX_FD_LIMIT=`ulimit -H -n` 95 | if [ $? -eq 0 ] ; then 96 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then 97 | MAX_FD="$MAX_FD_LIMIT" 98 | fi 99 | ulimit -n $MAX_FD 100 | if [ $? -ne 0 ] ; then 101 | warn "Could not set maximum file descriptor limit: $MAX_FD" 102 | fi 103 | else 104 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" 105 | fi 106 | fi 107 | 108 | # For Darwin, add options to specify how the application appears in the dock 109 | if $darwin; then 110 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" 111 | fi 112 | 113 | # For Cygwin, switch paths to Windows format before running java 114 | if $cygwin ; then 115 | APP_HOME=`cygpath --path --mixed "$APP_HOME"` 116 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 117 | 118 | # We build the pattern for arguments to be converted via cygpath 119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` 120 | SEP="" 121 | for dir in $ROOTDIRSRAW ; do 122 | ROOTDIRS="$ROOTDIRS$SEP$dir" 123 | SEP="|" 124 | done 125 | OURCYGPATTERN="(^($ROOTDIRS))" 126 | # Add a user-defined pattern to the cygpath arguments 127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then 128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" 129 | fi 130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 131 | i=0 132 | for arg in "$@" ; do 133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` 134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option 135 | 136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition 137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` 138 | else 139 | eval `echo args$i`="\"$arg\"" 140 | fi 141 | i=$((i+1)) 142 | done 143 | case $i in 144 | (0) set -- ;; 145 | (1) set -- "$args0" ;; 146 | (2) set -- "$args0" "$args1" ;; 147 | (3) set -- "$args0" "$args1" "$args2" ;; 148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;; 149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; 154 | esac 155 | fi 156 | 157 | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules 158 | function splitJvmOpts() { 159 | JVM_OPTS=("$@") 160 | } 161 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS 162 | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" 163 | 164 | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" 165 | -------------------------------------------------------------------------------- /android/gradlew.bat: -------------------------------------------------------------------------------- 1 | @if "%DEBUG%" == "" @echo off 2 | @rem ########################################################################## 3 | @rem 4 | @rem Gradle startup script for Windows 5 | @rem 6 | @rem ########################################################################## 7 | 8 | @rem Set local scope for the variables with windows NT shell 9 | if "%OS%"=="Windows_NT" setlocal 10 | 11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 12 | set DEFAULT_JVM_OPTS= 13 | 14 | set DIRNAME=%~dp0 15 | if "%DIRNAME%" == "" set DIRNAME=. 16 | set APP_BASE_NAME=%~n0 17 | set APP_HOME=%DIRNAME% 18 | 19 | @rem Find java.exe 20 | if defined JAVA_HOME goto findJavaFromJavaHome 21 | 22 | set JAVA_EXE=java.exe 23 | %JAVA_EXE% -version >NUL 2>&1 24 | if "%ERRORLEVEL%" == "0" goto init 25 | 26 | echo. 27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 28 | echo. 29 | echo Please set the JAVA_HOME variable in your environment to match the 30 | echo location of your Java installation. 31 | 32 | goto fail 33 | 34 | :findJavaFromJavaHome 35 | set JAVA_HOME=%JAVA_HOME:"=% 36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 37 | 38 | if exist "%JAVA_EXE%" goto init 39 | 40 | echo. 41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 42 | echo. 43 | echo Please set the JAVA_HOME variable in your environment to match the 44 | echo location of your Java installation. 45 | 46 | goto fail 47 | 48 | :init 49 | @rem Get command-line arguments, handling Windowz variants 50 | 51 | if not "%OS%" == "Windows_NT" goto win9xME_args 52 | if "%@eval[2+2]" == "4" goto 4NT_args 53 | 54 | :win9xME_args 55 | @rem Slurp the command line arguments. 56 | set CMD_LINE_ARGS= 57 | set _SKIP=2 58 | 59 | :win9xME_args_slurp 60 | if "x%~1" == "x" goto execute 61 | 62 | set CMD_LINE_ARGS=%* 63 | goto execute 64 | 65 | :4NT_args 66 | @rem Get arguments from the 4NT Shell from JP Software 67 | set CMD_LINE_ARGS=%$ 68 | 69 | :execute 70 | @rem Setup the command line 71 | 72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 73 | 74 | @rem Execute Gradle 75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% 76 | 77 | :end 78 | @rem End local scope for the variables with windows NT shell 79 | if "%ERRORLEVEL%"=="0" goto mainEnd 80 | 81 | :fail 82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 83 | rem the _cmd.exe /c_ return code! 84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 85 | exit /b 1 86 | 87 | :mainEnd 88 | if "%OS%"=="Windows_NT" endlocal 89 | 90 | :omega 91 | -------------------------------------------------------------------------------- /android/keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = "debug", 3 | properties = "debug.keystore.properties", 4 | store = "debug.keystore", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /android/keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'LadsBurger' 2 | include ':react-native-fbsdk' 3 | project(':react-native-fbsdk').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fbsdk/android') 4 | include ':react-native-svg' 5 | project(':react-native-svg').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-svg/android') 6 | 7 | include ':app' 8 | -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "LadsBurger", 3 | "displayName": "LadsBurger" 4 | } -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | import { AppRegistry } from 'react-native'; 2 | import App from './App'; 3 | 4 | AppRegistry.registerComponent('LadsBurger', () => App); 5 | -------------------------------------------------------------------------------- /ios/LadsBurger-tvOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UIViewControllerBasedStatusBarAppearance 38 | 39 | NSLocationWhenInUseUsageDescription 40 | 41 | NSAppTransportSecurity 42 | 43 | 44 | NSExceptionDomains 45 | 46 | localhost 47 | 48 | NSExceptionAllowsInsecureHTTPLoads 49 | 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /ios/LadsBurger-tvOSTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /ios/LadsBurger.xcodeproj/xcshareddata/xcschemes/LadsBurger-tvOS.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 43 | 49 | 50 | 51 | 52 | 53 | 58 | 59 | 61 | 67 | 68 | 69 | 70 | 71 | 77 | 78 | 79 | 80 | 81 | 82 | 92 | 94 | 100 | 101 | 102 | 103 | 104 | 105 | 111 | 113 | 119 | 120 | 121 | 122 | 124 | 125 | 128 | 129 | 130 | -------------------------------------------------------------------------------- /ios/LadsBurger.xcodeproj/xcshareddata/xcschemes/LadsBurger.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 43 | 49 | 50 | 51 | 52 | 53 | 58 | 59 | 61 | 67 | 68 | 69 | 70 | 71 | 77 | 78 | 79 | 80 | 81 | 82 | 92 | 94 | 100 | 101 | 102 | 103 | 104 | 105 | 111 | 113 | 119 | 120 | 121 | 122 | 124 | 125 | 128 | 129 | 130 | -------------------------------------------------------------------------------- /ios/LadsBurger/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import 9 | 10 | @interface AppDelegate : UIResponder 11 | 12 | @property (nonatomic, strong) UIWindow *window; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /ios/LadsBurger/AppDelegate.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import "AppDelegate.h" 9 | 10 | #import 11 | #import 12 | 13 | @implementation AppDelegate 14 | 15 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 16 | { 17 | NSURL *jsCodeLocation; 18 | 19 | jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; 20 | 21 | RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation 22 | moduleName:@"LadsBurger" 23 | initialProperties:nil 24 | launchOptions:launchOptions]; 25 | rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; 26 | 27 | self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; 28 | UIViewController *rootViewController = [UIViewController new]; 29 | rootViewController.view = rootView; 30 | self.window.rootViewController = rootViewController; 31 | [self.window makeKeyAndVisible]; 32 | return YES; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /ios/LadsBurger/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 21 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /ios/LadsBurger/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /ios/LadsBurger/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /ios/LadsBurger/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | LadsBurger 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | LSRequiresIPhoneOS 26 | 27 | UILaunchStoryboardName 28 | LaunchScreen 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | UIViewControllerBasedStatusBarAppearance 40 | 41 | NSLocationWhenInUseUsageDescription 42 | 43 | NSAppTransportSecurity 44 | 45 | NSExceptionDomains 46 | 47 | localhost 48 | 49 | NSExceptionAllowsInsecureHTTPLoads 50 | 51 | 52 | 53 | 54 | UIAppFonts 55 | 56 | MyriadPro-Regular.ttf 57 | MyriadPro-Semibold.ttf 58 | Entypo.ttf 59 | EvilIcons.ttf 60 | FontAwesome.ttf 61 | Foundation.ttf 62 | Ionicons.ttf 63 | MaterialCommunityIcons.ttf 64 | MaterialIcons.ttf 65 | Octicons.ttf 66 | Roboto_medium.ttf 67 | Roboto.ttf 68 | rubicon-icon-font.ttf 69 | SimpleLineIcons.ttf 70 | Zocial.ttf 71 | Blueberry-Pie.ttf 72 | Just tell me what regular Italic.otf 73 | Just tell me what regular.otf 74 | Justtellmewhat-regular.otf 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /ios/LadsBurger/main.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import 9 | 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ios/LadsBurgerTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /ios/LadsBurgerTests/LadsBurgerTests.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import 9 | #import 10 | 11 | #import 12 | #import 13 | 14 | #define TIMEOUT_SECONDS 600 15 | #define TEXT_TO_LOOK_FOR @"Welcome to React Native!" 16 | 17 | @interface LadsBurgerTests : XCTestCase 18 | 19 | @end 20 | 21 | @implementation LadsBurgerTests 22 | 23 | - (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test 24 | { 25 | if (test(view)) { 26 | return YES; 27 | } 28 | for (UIView *subview in [view subviews]) { 29 | if ([self findSubviewInView:subview matching:test]) { 30 | return YES; 31 | } 32 | } 33 | return NO; 34 | } 35 | 36 | - (void)testRendersWelcomeScreen 37 | { 38 | UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController]; 39 | NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; 40 | BOOL foundElement = NO; 41 | 42 | __block NSString *redboxError = nil; 43 | RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { 44 | if (level >= RCTLogLevelError) { 45 | redboxError = message; 46 | } 47 | }); 48 | 49 | while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { 50 | [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 51 | [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 52 | 53 | foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { 54 | if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { 55 | return YES; 56 | } 57 | return NO; 58 | }]; 59 | } 60 | 61 | RCTSetLogFunction(RCTDefaultLogFunction); 62 | 63 | XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); 64 | XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); 65 | } 66 | 67 | 68 | @end 69 | -------------------------------------------------------------------------------- /lads.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/lads.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "LadsBurger", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "start": "node node_modules/react-native/local-cli/cli.js start", 7 | "test": "jest" 8 | }, 9 | "dependencies": { 10 | "native-base": "^2.6.1", 11 | "react": "16.3.1", 12 | "react-native": "0.55.4", 13 | "react-native-fbsdk": "^0.7.0", 14 | "react-native-material-dropdown": "^0.11.1", 15 | "react-native-shadow": "^1.2.2", 16 | "react-native-super-grid": "^2.4.0", 17 | "react-native-svg": "^6.3.1", 18 | "react-navigation": "^2.5.5" 19 | }, 20 | "devDependencies": { 21 | "babel-jest": "23.2.0", 22 | "babel-preset-react-native": "4.0.0", 23 | "jest": "23.2.0", 24 | "react-test-renderer": "16.3.1" 25 | }, 26 | "jest": { 27 | "preset": "react-native" 28 | }, 29 | "rnpm": { 30 | "assets": [ 31 | "./src/assets/fonts" 32 | ] 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/AppNavigator.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import { Dimensions } from 'react-native'; 4 | import Login from './screens/auth/Login'; 5 | import Signup from './screens/auth/Signup'; 6 | import Home from './screens/Home'; 7 | import Order from './screens/Order'; 8 | import MyAccount from './screens/MyAccount'; 9 | import Drawer from './screens/Drawer'; 10 | import Locations from './screens/Locations'; 11 | import Profile from './screens/InsideMenu'; 12 | import Menu from './screens/Customize'; 13 | import Social from './screens/Cart'; 14 | 15 | 16 | import { createDrawerNavigator, createStackNavigator, createSwitchNavigator } from 'react-navigation'; 17 | 18 | var { height, width } = Dimensions.get('window'); 19 | 20 | const authNavigator = createStackNavigator( 21 | { 22 | Login: { 23 | screen: Login, 24 | navigationOptions: { 25 | header: null 26 | } 27 | }, 28 | Signup: { 29 | screen: Signup, 30 | navigationOptions: { 31 | header: null 32 | } 33 | }, 34 | Order: { 35 | screen: Order, 36 | navigationOptions: { 37 | header: null 38 | } 39 | } 40 | }, 41 | { 42 | initialRouteName: 'Login', 43 | } 44 | ); 45 | 46 | const mainNavigator = createDrawerNavigator( 47 | { 48 | Home: { 49 | screen: Home, 50 | }, 51 | Order: { 52 | screen: Order, 53 | navigationOptions: { 54 | header: null, 55 | drawerLabel: 'Order Online' 56 | } 57 | }, 58 | MyAccount: { 59 | screen: MyAccount, 60 | navigationOptions: { 61 | header: null, 62 | drawerLabel: 'MY ACCOUNT' 63 | } 64 | }, 65 | Locations: { 66 | screen: Locations, 67 | navigationOptions: { 68 | header: null, 69 | drawerLabel: 'Locations' 70 | } 71 | }, 72 | Profile: { 73 | screen: Profile, 74 | navigationOptions: { 75 | header: null, 76 | drawerLabel: 'Profile' 77 | } 78 | }, 79 | Menu: { 80 | screen: Menu, 81 | navigationOptions: { 82 | header: null, 83 | drawerLabel: 'Menu' 84 | } 85 | }, 86 | Social: { 87 | screen: Social, 88 | navigationOptions: { 89 | header: null, 90 | drawerLabel: 'Menu' 91 | } 92 | } 93 | }, 94 | { 95 | initialRouteName: 'Home', 96 | contentComponent: (props) => , 97 | contentOptions: { 98 | labelStyle: { 99 | fontFamily: 'Blueberry-Pie' 100 | }, 101 | itemStyle: { 102 | paddingLeft: 50 103 | } 104 | } 105 | } 106 | ); 107 | 108 | export const AppNavigator = createStackNavigator( 109 | { 110 | Auth: { 111 | screen: authNavigator, 112 | navigationOptions: { 113 | header: null 114 | } 115 | }, 116 | Main: { 117 | screen: mainNavigator, 118 | navigationOptions: { 119 | header: null 120 | } 121 | } 122 | }, 123 | { 124 | initialRouteName: 'Auth' 125 | } 126 | ); -------------------------------------------------------------------------------- /src/assets.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets.zip -------------------------------------------------------------------------------- /src/assets/fonts/Blueberry-Pie.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/Blueberry-Pie.ttf -------------------------------------------------------------------------------- /src/assets/fonts/Justtellmewhat-regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/Justtellmewhat-regular.otf -------------------------------------------------------------------------------- /src/assets/fonts/MyriadPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/MyriadPro-Regular.ttf -------------------------------------------------------------------------------- /src/assets/fonts/MyriadPro-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/MyriadPro-Semibold.ttf -------------------------------------------------------------------------------- /src/assets/fonts/just-tell-me-what.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/just-tell-me-what.zip -------------------------------------------------------------------------------- /src/assets/fonts/just-tell-me-what/Just tell me what regular Italic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/just-tell-me-what/Just tell me what regular Italic.otf -------------------------------------------------------------------------------- /src/assets/fonts/just-tell-me-what/Just tell me what regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/fonts/just-tell-me-what/Just tell me what regular.otf -------------------------------------------------------------------------------- /src/assets/fonts/just-tell-me-what/Read Me.txt: -------------------------------------------------------------------------------- 1 | Just tell me what Font is created by Situjuh Nazara (c7nazara@gmail.com) 2 | 3 | License 4 | 5 | Personal use: FREE. Support me to create more free for personal use fonts by donating as much as you wish to via my Paypal https://www.paypal.me/Situjuh or hit the donation button where you download this font. 6 | 7 | Commercial use, get it exclusively only on Creative Fabrica. Here is the fix link is: https://www.creativefabrica.com/product/just-tell-me-what/ref/87/ 8 | 9 | Contact me or visit my website [https://c7n1.com] if you have any request or question. -------------------------------------------------------------------------------- /src/assets/fonts/just-tell-me-what/sharefonts.net.txt: -------------------------------------------------------------------------------- 1 | Free download fonts at http://sharefonts.net -------------------------------------------------------------------------------- /src/assets/icons/basket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/icons/basket.png -------------------------------------------------------------------------------- /src/assets/icons/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/icons/close.png -------------------------------------------------------------------------------- /src/assets/icons/menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/icons/menu.png -------------------------------------------------------------------------------- /src/assets/icons/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/icons/search.png -------------------------------------------------------------------------------- /src/assets/images/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/bg.png -------------------------------------------------------------------------------- /src/assets/images/breakfast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/breakfast.png -------------------------------------------------------------------------------- /src/assets/images/chicken.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/chicken.png -------------------------------------------------------------------------------- /src/assets/images/dessert.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/dessert.png -------------------------------------------------------------------------------- /src/assets/images/drinks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/drinks.png -------------------------------------------------------------------------------- /src/assets/images/foods/food1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food1.png -------------------------------------------------------------------------------- /src/assets/images/foods/food2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food2.png -------------------------------------------------------------------------------- /src/assets/images/foods/food3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food3.png -------------------------------------------------------------------------------- /src/assets/images/foods/food4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food4.png -------------------------------------------------------------------------------- /src/assets/images/foods/food5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food5.png -------------------------------------------------------------------------------- /src/assets/images/foods/food6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/foods/food6.png -------------------------------------------------------------------------------- /src/assets/images/home_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/home_bg.png -------------------------------------------------------------------------------- /src/assets/images/login_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/login_bg.png -------------------------------------------------------------------------------- /src/assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/logo.png -------------------------------------------------------------------------------- /src/assets/images/milkshake.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/milkshake.png -------------------------------------------------------------------------------- /src/assets/images/pasta.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/pasta.png -------------------------------------------------------------------------------- /src/assets/images/sides.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/sides.png -------------------------------------------------------------------------------- /src/assets/images/wanyu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jsguru-git/lads-react-native-app/2f892b6729cb47e3f5b47ac7d3d8f24b5ea1a28d/src/assets/images/wanyu.png -------------------------------------------------------------------------------- /src/components/BaseImagePage.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, ImageBackground, Image, View } from 'react-native'; 3 | 4 | export default class BaseImagePage extends Component { 5 | constructor(props) { 6 | super(props); 7 | this.state = { 8 | width: 0, 9 | height: 0 10 | } 11 | } 12 | _onLayout(event) { 13 | const containerWidth = event.nativeEvent.layout.width; 14 | const sz = Image.resolveAssetSource(this.props.source); 15 | this.setState({ 16 | width: containerWidth, 17 | height: containerWidth * sz.height / sz.width 18 | }); 19 | } 20 | render() { 21 | return ( 22 | 23 | 29 | {this.props.children} 30 | 31 | ) 32 | } 33 | } 34 | 35 | const styles = StyleSheet.create({ 36 | container: { 37 | flex: 1, 38 | width: '100%', 39 | height: '100%', 40 | position: 'absolute' 41 | } 42 | }); -------------------------------------------------------------------------------- /src/components/BottomView.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, View, Dimensions } from 'react-native'; 3 | import { BoxShadow } from 'react-native-shadow' 4 | var { width } = Dimensions.get('window'); 5 | 6 | export default class BottomView extends Component { 7 | render() { 8 | const shadowOpt = { 9 | width: width, 10 | height: 0, 11 | color:"#000", 12 | borderColor: '#000', 13 | border:20, 14 | opacity:0.1, 15 | x:0, 16 | y:10, 17 | } 18 | return ( 19 | 20 | 21 | 22 | 23 | {this.props.children} 24 | 25 | 26 | ) 27 | } 28 | } 29 | 30 | const styles = StyleSheet.create({ 31 | BottomView: { 32 | width: '100%', 33 | padding: 10, 34 | backgroundColor: 'white', 35 | justifyContent: 'center', 36 | }, 37 | titleFont: { 38 | color: 'black', 39 | fontSize: 14, 40 | fontFamily: 'MyriadPro-Regular' 41 | }, 42 | leftHeaderView: { 43 | width: 60, 44 | alignItems: 'center', 45 | justifyContent: 'center' 46 | }, 47 | titleHeaderView: { 48 | flex: 1, 49 | alignItems: 'center', 50 | justifyContent: 'center' 51 | }, 52 | RightHeaderView: { 53 | width: 60, 54 | flexDirection: 'row', 55 | alignItems: 'center', 56 | justifyContent: 'flex-end' 57 | }, 58 | }) 59 | -------------------------------------------------------------------------------- /src/components/DropDown.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, View, Text, TextInput } from 'react-native'; 3 | import { Dropdown } from 'react-native-material-dropdown'; 4 | 5 | export default class MyDropdown extends Component { 6 | constructor(props) { 7 | super(props); 8 | this.state = { 9 | 10 | } 11 | } 12 | render() { 13 | return ( 14 | 15 | 16 | {this.props.label} 17 | 18 | 19 | 29 | 30 | 35 | V 36 | 37 | } 38 | /> 39 | 40 | ) 41 | } 42 | } 43 | 44 | const styles = StyleSheet.create({ 45 | pciker: { 46 | // borderColor: '#D4D5D7', 47 | // borderWidth: 1, 48 | borderRadius: 5, 49 | backgroundColor: '#ffffff' 50 | }, 51 | itemText: { 52 | color: 'rgb(96, 96, 96)', 53 | fontSize: 14, 54 | fontWeight: '400', 55 | fontFamily: 'Gibson-Regular', 56 | paddingLeft: 4, 57 | height: 30, 58 | }, 59 | text: { 60 | color: 'white', 61 | fontSize: 10, 62 | fontWeight: '400', 63 | paddingLeft: 4, 64 | height: 34, 65 | borderBottomWidth: 1, 66 | borderColor: 'white', 67 | flex: 1, 68 | justifyContent: 'center', 69 | alignItems: 'center' 70 | }, 71 | font1: { 72 | fontSize: 10, 73 | color: '#a9b6b7', 74 | fontFamily: 'MyriadPro-Regular' 75 | } 76 | }) -------------------------------------------------------------------------------- /src/components/HeaderView.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, TouchableOpacity, View, Text, Dimensions, Image } from 'react-native'; 3 | import { BoxShadow } from 'react-native-shadow' 4 | var { width } = Dimensions.get('window'); 5 | 6 | export default class HeaderView extends Component { 7 | render() { 8 | const shadowOpt = { 9 | width: width, 10 | height: 40, 11 | color:"#000", 12 | borderColor: '#000', 13 | border:10, 14 | opacity:0.3, 15 | x:0, 16 | y:-5, 17 | } 18 | return ( 19 | 20 | 21 | 22 | 25 | 30 | 31 | 32 | 33 | 36 | {this.props.title} 37 | 38 | 39 | 40 | 43 | 48 | 49 | 50 | 53 | 58 | 59 | 60 | 61 | 62 | ) 63 | } 64 | } 65 | 66 | const styles = StyleSheet.create({ 67 | HeaderView: { 68 | width: '100%', 69 | height: 40, 70 | flexDirection: 'row', 71 | backgroundColor: 'white', 72 | justifyContent: 'center', 73 | paddingRight: 10, 74 | paddingLeft: 0, 75 | }, 76 | titleFont: { 77 | color: 'black', 78 | fontSize: 14, 79 | fontFamily: 'MyriadPro-Regular' 80 | }, 81 | leftHeaderView: { 82 | width: 60, 83 | alignItems: 'center', 84 | justifyContent: 'center' 85 | }, 86 | titleHeaderView: { 87 | flex: 1, 88 | alignItems: 'center', 89 | justifyContent: 'center' 90 | }, 91 | RightHeaderView: { 92 | width: 60, 93 | flexDirection: 'row', 94 | alignItems: 'center', 95 | justifyContent: 'flex-end' 96 | }, 97 | }) 98 | -------------------------------------------------------------------------------- /src/components/HeaderView_Cart.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, TouchableOpacity, View, Text, Dimensions, Image } from 'react-native'; 3 | import { BoxShadow } from 'react-native-shadow' 4 | var { width } = Dimensions.get('window'); 5 | 6 | export default class HeaderView extends Component { 7 | render() { 8 | const shadowOpt = { 9 | width: width, 10 | height: 40, 11 | color:"#000", 12 | borderColor: '#000', 13 | border:10, 14 | opacity:0.3, 15 | x:0, 16 | y:-5, 17 | } 18 | return ( 19 | 20 | 21 | 22 | 25 | {'<'} 26 | 27 | 28 | 29 | 32 | {this.props.title} 33 | 34 | 35 | 36 | 37 | 38 | 39 | ) 40 | } 41 | } 42 | 43 | const styles = StyleSheet.create({ 44 | HeaderView: { 45 | width: '100%', 46 | height: 40, 47 | flexDirection: 'row', 48 | backgroundColor: 'white', 49 | justifyContent: 'center', 50 | paddingRight: 10, 51 | paddingLeft: 0, 52 | }, 53 | titleFont: { 54 | color: 'black', 55 | fontSize: 16, 56 | fontFamily: 'MyriadPro-Regular', 57 | fontWeight: '400' 58 | }, 59 | leftHeaderView: { 60 | width: 60, 61 | alignItems: 'center', 62 | justifyContent: 'center' 63 | }, 64 | titleHeaderView: { 65 | flex: 1, 66 | alignItems: 'center', 67 | justifyContent: 'center' 68 | }, 69 | RightHeaderView: { 70 | width: 60, 71 | flexDirection: 'row', 72 | alignItems: 'center', 73 | justifyContent: 'flex-end' 74 | }, 75 | }) 76 | -------------------------------------------------------------------------------- /src/components/MyTextInput.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, TextInput, View, Text } from 'react-native'; 3 | 4 | export default class MyTextInput extends Component { 5 | render() { 6 | return ( 7 | 8 | 9 | {this.props.label} 10 | 11 | 12 | 21 | 22 | ) 23 | } 24 | } 25 | 26 | const styles = StyleSheet.create({ 27 | text: { 28 | color: 'white', 29 | fontSize: 10, 30 | fontWeight: '400', 31 | paddingLeft: 4, 32 | height: 34, 33 | borderBottomWidth: 1, 34 | borderColor: '#a9b6b7', 35 | flex: 1, 36 | justifyContent: 'center', 37 | alignItems: 'center' 38 | }, 39 | font1: { 40 | fontSize: 10, 41 | color: '#a9b6b7', 42 | fontFamily: 'MyriadPro-Regular' 43 | } 44 | }) 45 | -------------------------------------------------------------------------------- /src/components/SocialButton.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, TouchableOpacity, Text, View } from 'react-native'; 3 | import { Icon } from 'native-base'; 4 | 5 | export default class OpacityButton extends Component { 6 | constructor(props) { 7 | super(props); 8 | } 9 | 10 | render() { 11 | return ( 12 | 13 | 14 | 19 | {this.props.title} 20 | 21 | 22 | ); 23 | } 24 | } 25 | 26 | const styles = StyleSheet.create({ 27 | button: { 28 | height: 35, 29 | paddingHorizontal: 30, 30 | flexDirection: 'row', 31 | backgroundColor: 'white', 32 | opacity: 0.75, 33 | justifyContent: 'center', 34 | alignItems: 'center', 35 | borderRadius: 6 36 | }, 37 | icon: { 38 | color: 'black', 39 | fontSize: 18, 40 | paddingTop: 0, 41 | }, 42 | text: { 43 | color: 'black', 44 | fontSize: 12, 45 | fontFamily: 'MyriadPro-Regular', 46 | paddingLeft: 10 47 | } 48 | }); -------------------------------------------------------------------------------- /src/screens/Cart.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, Image, Text, TouchableOpacity, ScrollView } from 'react-native'; 3 | import styles from '../styles/Cart'; 4 | import HeaderView from '../components/HeaderView_Cart'; 5 | import BottomView from '../components/BottomView'; 6 | import { Button, List } from 'native-base'; 7 | 8 | const cartArr = [ 9 | { 10 | img: require('../../src/assets/images/breakfast.png'), 11 | name: '1x Classic Burger', 12 | price: 29, 13 | Combo: 'Combo: Pepsi, Lotus Cheesecake', 14 | comboPrice: 20, 15 | Add: 'Add: Avocado, Bacon, Chesse, Egg', 16 | addPrice: 13, 17 | Without: 'Without: Onion, Pickles', 18 | }, 19 | { 20 | img: require('../../src/assets/images/pasta.png'), 21 | name: '1x Classic Burger', 22 | price: 29, 23 | Combo: 'Combo: NA', 24 | comboPrice: 0, 25 | Add: 'Add: NA', 26 | addPrice: 0, 27 | Without: 'Without: NA' 28 | }, 29 | { 30 | img: require('../../src/assets/images/chicken.png'), 31 | name: '2x Classic Burger', 32 | price: 58, 33 | Combo: 'Combo: 7UP, Pepsi', 34 | comboPrice: 20, 35 | Add: 'Add: Grilled Onion, Tomato', 36 | addPrice: 0, 37 | Without: 'Without: NA' 38 | }, 39 | { 40 | img: require('../../src/assets/images/pasta.png'), 41 | name: '2x Classic Burger', 42 | price: 58, 43 | Combo: 'Combo: 7UP, Pepsi', 44 | comboPrice: 20, 45 | Add: 'Add: Grilled Onion, Tomato', 46 | addPrice: 0, 47 | Without: 'Without: NA' 48 | }, 49 | { 50 | img: require('../../src/assets/images/dessert.png'), 51 | name: '2x Classic Burger', 52 | price: 58, 53 | Combo: 'Combo: 7UP, Pepsi', 54 | comboPrice: 20, 55 | Add: 'Add: Grilled Onion, Tomato', 56 | addPrice: 0, 57 | Without: 'Without: NA' 58 | }, 59 | { 60 | img: require('../../src/assets/images/milkshake.png'), 61 | name: '2x Classic Burger', 62 | price: 58, 63 | Combo: 'Combo: 7UP, Pepsi', 64 | comboPrice: 20, 65 | Add: 'Add: Grilled Onion, Tomato', 66 | addPrice: 0, 67 | Without: 'Without: NA' 68 | }, 69 | ]; 70 | export default class Cart extends Component { 71 | constructor(props){ 72 | super(props) 73 | this.state = { 74 | } 75 | } 76 | renderListView(rowData) { 77 | return ( 78 | 79 | 80 | 81 | 82 | {rowData.name} 83 | {rowData.price} aed 84 | 85 | 86 | {rowData.Combo} 87 | {rowData.comboPrice} aed 88 | 89 | 90 | {rowData.Add} 91 | {rowData.addPrice} aed 92 | 93 | 94 | {rowData.Without} 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 62aed 107 | 108 | 109 | 110 | ) 111 | } 112 | render() { 113 | return ( 114 | 115 | {alert('onPressMenu')}} 118 | /> 119 | 120 | this.renderListView(rowData)} 123 | /> 124 | 125 | 126 | 127 | 130 | 131 | 132 | ) 133 | } 134 | } -------------------------------------------------------------------------------- /src/screens/Customize.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, ImageBackground, Text, TouchableOpacity, ScrollView } from 'react-native'; 3 | import styles from '../styles/Customize'; 4 | import BottomView from '../components/BottomView'; 5 | import { Button, Icon } from 'native-base'; 6 | 7 | const img = require('../assets/images/foods/food1.png'); 8 | 9 | const items = [ 10 | { 11 | img: require('../assets/images/foods/food1.png'), 12 | name: `Lads 70's B`, 13 | Bestseller: true, 14 | Musttry: false, 15 | price: 107, 16 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 17 | } 18 | ] 19 | 20 | export default class Customize extends Component { 21 | constructor(props){ 22 | super(props) 23 | this.state = { 24 | } 25 | } 26 | 27 | render() { 28 | return ( 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | {items[0].name} 38 | {items[0].details} 39 | 40 | 41 | 42 | {items[0].price} 43 | AED 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 56 | 57 | 60 | 61 | 62 | Make it a COMBO? 63 | 64 | 65 | COMBO 66 | +10 67 | 68 | 69 | Dring + Salad + Fries 70 | AED 71 | 72 | 73 | 74 | 75 | COMBO + CHEESECAKE 76 | +20 77 | 78 | 79 | Dring + Salad + Fries + Cheesecake 80 | AED 81 | 82 | 83 | 84 | 85 | CUSTOMISEyour Burger! 86 | 87 | 88 | ADD EXTRA 89 | +0AED 90 | 91 | 92 | 93 | 94 | WITHOUT 95 | 96 | 97 | 98 | 99 | 105 | 106 | 107 | ) 108 | } 109 | } -------------------------------------------------------------------------------- /src/screens/Drawer.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { TouchableOpacity, Image, View, Text } from 'react-native' 3 | import { DrawerItems, SafeAreaView } from 'react-navigation'; 4 | 5 | const routes = [ 6 | { 7 | label: 'Home', 8 | routeName: 'Home' 9 | }, 10 | { 11 | label: 'My Profile', 12 | routeName: 'Profile' 13 | }, 14 | { 15 | label: 'Order Online', 16 | routeName: 'Order' 17 | }, 18 | { 19 | label: 'Menu', 20 | routeName: 'Menu' 21 | }, 22 | { 23 | label: 'Locations', 24 | routeName: 'Locations' 25 | }, 26 | { 27 | label: 'Social', 28 | routeName: 'Social' 29 | }, 30 | { 31 | label: 'About Us', 32 | routeName: 'Aboutus' 33 | } 34 | ]; 35 | 36 | const Drawer = (props) => ( 37 | 38 | props.navigation.closeDrawer()}> 39 | 40 | 41 | 42 | { 43 | routes.map((item, index) => 44 | props.navigation.navigate(item.routeName)} 47 | > 48 | {item.label} 49 | 50 | ) 51 | } 52 | 53 | 54 | ) 55 | 56 | export default Drawer -------------------------------------------------------------------------------- /src/screens/Home.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, Image, ImageBackground, Text, TouchableOpacity, Dimensions } from 'react-native'; 3 | import HeaderView from '../components/HeaderView'; 4 | import styles from '../styles/Home'; 5 | var {width} = Dimensions.get('window'); 6 | import img from '../assets/images/home_bg.png'; 7 | 8 | class Main extends Component { 9 | constructor(props) { 10 | super(props); 11 | this.state = { 12 | width: 0, 13 | height: 0 14 | } 15 | } 16 | 17 | _onLayout(event) { 18 | const containerWidth = event.nativeEvent.layout.width; 19 | const sz = Image.resolveAssetSource(img); 20 | this.setState({ 21 | width: containerWidth, 22 | height: containerWidth * sz.height / sz.width 23 | }); 24 | } 25 | 26 | render() { 27 | const { openDrawer } = this.props.navigation; 28 | const shadowOpt = { 29 | width: width, 30 | height: 40, 31 | color:"#000", 32 | borderColor: '#000', 33 | border:10, 34 | opacity:0.3, 35 | x:0, 36 | y:-5, 37 | } 38 | return ( 39 | 40 | openDrawer()} 43 | onPressSearch={() => {alert('onPressSearch')}} 44 | onPressBasket={() => {alert('onPressBasket')}} 45 | /> 46 | 47 | 52 | 53 | {/* 54 | 59 | */} 60 | 61 | this.props.navigation.navigate('MyAccount')} 64 | > 65 | MY ACCOUNT 66 | 67 | 68 | ORDER{'\r\n'}HERE 69 | 70 | 71 | 72 | ) 73 | } 74 | } 75 | 76 | export default Main; -------------------------------------------------------------------------------- /src/screens/InsideMenu.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, Image, Text, TouchableOpacity } from 'react-native'; 3 | import styles from '../styles/InsideMenu'; 4 | import HeaderView from '../components/HeaderView'; 5 | import { Icon } from 'native-base'; 6 | import GridView from 'react-native-super-grid'; 7 | 8 | const items = [ 9 | { 10 | img: require('../assets/images/foods/food1.png'), 11 | name: `Lads 70's B`, 12 | Bestseller: true, 13 | Musttry: false, 14 | price: 39, 15 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 16 | }, 17 | { 18 | img: require('../assets/images/foods/food1.png'), 19 | name: `Steak Bagel`, 20 | Bestseller: false, 21 | Musttry: true, 22 | price: 56, 23 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 24 | }, 25 | { 26 | img: require('../assets/images/foods/food1.png'), 27 | name: `Swiss & Mushroom`, 28 | Bestseller: false, 29 | Musttry: false, 30 | price: 34, 31 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 32 | }, 33 | { 34 | img: require('../assets/images/foods/food1.png'), 35 | name: `Big Lads`, 36 | Bestseller: false, 37 | Musttry: true, 38 | price: 49, 39 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 40 | }, 41 | { 42 | img: require('../assets/images/foods/food1.png'), 43 | name: `Pina-Colada`, 44 | Bestseller: true, 45 | Musttry: false, 46 | price: 39, 47 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 48 | }, 49 | { 50 | img: require('../assets/images/foods/food1.png'), 51 | name: `Classic Burger`, 52 | Bestseller: false, 53 | Musttry: false, 54 | price: 29, 55 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 56 | }, 57 | { 58 | img: require('../assets/images/foods/food1.png'), 59 | name: `Classic Burger`, 60 | Bestseller: false, 61 | Musttry: false, 62 | price: 29, 63 | details: '160 G of charcoal grilled 100% WAGYU beef patty with tomato, homemade pickles, grilled onion, egg, cheddar, and mozzarella cheese' 64 | }, 65 | ]; 66 | 67 | 68 | export default class Locations extends Component { 69 | constructor(props){ 70 | super(props) 71 | this.state = { 72 | } 73 | } 74 | 75 | renderGridView(item) { 76 | return ( 77 | 78 | 79 | 80 | 81 | 82 | {item.name} 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | {item.price} 93 | AED 94 | 95 | 96 | {item.details} 97 | 98 | 99 | ) 100 | } 101 | 102 | render() { 103 | const { openDrawer } = this.props.navigation; 104 | return ( 105 | 106 | openDrawer()} 109 | onPressSearch={() => {alert('onPressSearch')}} 110 | onPressBasket={() => {alert('onPressBasket')}} 111 | /> 112 | 113 | 114 | 115 | 116 | Bestseller 117 | 118 | 119 | 120 | Must try 121 | 122 | 123 | this.renderGridView(item)} 129 | /> 130 | 131 | 132 | ) 133 | } 134 | } -------------------------------------------------------------------------------- /src/screens/Locations.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, Image, Text, TouchableOpacity, ScrollView } from 'react-native'; 3 | import styles from '../styles/Locations'; 4 | import HeaderView from '../components/HeaderView'; 5 | import { Card, List } from 'native-base'; 6 | 7 | const info = [ 8 | { 9 | name: 'JUMEIRA 3', 10 | address: '', 11 | phone: '' 12 | }, 13 | { 14 | name: 'DOWNTOWN', 15 | address: '', 16 | phone: '' 17 | } 18 | ] 19 | 20 | export default class Locations extends Component { 21 | constructor(props){ 22 | super(props) 23 | this.state = { 24 | } 25 | } 26 | renderListView(rowData) { 27 | return( 28 | 29 | 30 | {rowData.name} 31 | 32 | 33 | Address here 34 | 35 | 36 | Phone here 37 | 38 | 39 | 40 | View us in Maps 41 | 42 | 43 | ) 44 | } 45 | render() { 46 | const { openDrawer } = this.props.navigation; 47 | return ( 48 | 49 | openDrawer()} 52 | onPressSearch={() => {alert('onPressSearch')}} 53 | onPressBasket={() => {alert('onPressBasket')}} 54 | /> 55 | 56 | this.renderListView(rowData)} 59 | /> 60 | 61 | more locations soon! 62 | 63 | 64 | 65 | ) 66 | } 67 | } -------------------------------------------------------------------------------- /src/screens/MyAccount.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, Image, Text, TouchableOpacity, ScrollView, ART, Dimensions, PanResponder } from 'react-native'; 3 | import styles from '../styles/MyAccount'; 4 | import HeaderView from '../components/HeaderView'; 5 | import Svg,{Path,Circle,G} from 'react-native-svg' 6 | var {width, height} = Dimensions.get('window'); 7 | 8 | const { 9 | Surface, 10 | Group, 11 | Shape, 12 | } = ART; 13 | 14 | export default class MyAccount extends Component { 15 | constructor(props){ 16 | super(props) 17 | this.handlePanResponderMove = this.handlePanResponderMove.bind(this) 18 | this.cartesianToPolar = this.cartesianToPolar.bind(this) 19 | this.polarToCartesian = this.polarToCartesian.bind(this) 20 | const smallestSide = (Math.min(width,height)) 21 | this.state = { 22 | cx: width/2, 23 | cy: height/2, 24 | r: (smallestSide/2)*0.85 25 | } 26 | } 27 | componentWillMount = () => { 28 | this._panResponder = PanResponder.create({ 29 | onStartShouldSetPanResponder: () => true, 30 | onMoveShouldSetPanResponder: () => true, 31 | onPanResponderMove: this.handlePanResponderMove 32 | }) 33 | } 34 | polarToCartesian(angle){ 35 | const {cx,cy,r} = this.state 36 | , a = (angle-270) * Math.PI / 180.0 37 | , x = cx + (r * Math.cos(a)) 38 | , y = cy + (r * Math.sin(a)) 39 | return {x,y} 40 | } 41 | cartesianToPolar(x,y){ 42 | const {cx,cy} = this.state 43 | return Math.round((Math.atan((y-cy)/(x-cx)))/(Math.PI/180)+((x>cx) ? 270 : 90)) 44 | } 45 | handlePanResponderMove({nativeEvent:{locationX,locationY}}){ 46 | this.props.onValueChange(this.cartesianToPolar(locationX,locationY)) 47 | } 48 | render() { 49 | const { openDrawer } = this.props.navigation; 50 | const {value,meterColor,textColor,onValueChange} = this.props; 51 | const {cx,cy,r} = this.state; 52 | const startCoord = this.polarToCartesian(0); 53 | const endCoord = this.polarToCartesian(value); 54 | 55 | return ( 56 | 57 | openDrawer()} 60 | onPressSearch={() => {alert('onPressSearch')}} 61 | onPressBasket={() => {alert('onPressBasket')}} 62 | /> 63 | 64 | 65 | 71 | {/* 180?1:0} 1 ${endCoord.x} ${endCoord.y}`} 76 | d="M 0 0 A 100 100 0 0 1 200 200" 77 | /> 78 | 79 | 80 | 81 | {value+''} 82 | */} 83 | 84 | 85 | ) 86 | } 87 | } -------------------------------------------------------------------------------- /src/screens/Order.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, View, Image, Text, TouchableOpacity, ScrollView, ImageBackground } from 'react-native'; 3 | import styles from '../styles/Order'; 4 | import { List } from 'native-base'; 5 | import HeaderView from '../components/HeaderView'; 6 | 7 | const orderArr = [ 8 | { 9 | img: require('../../src/assets/images/breakfast.png'), 10 | name: 'BREAKFAST' 11 | }, 12 | { 13 | img: require('../../src/assets/images/wanyu.png'), 14 | name: 'WAGYU BEEF BURGER' 15 | }, 16 | { 17 | img: require('../../src/assets/images/chicken.png'), 18 | name: 'CHICKEN BURGER' 19 | }, 20 | { 21 | img: require('../../src/assets/images/pasta.png'), 22 | name: 'PASTA' 23 | }, 24 | { 25 | img: require('../../src/assets/images/dessert.png'), 26 | name: 'DESSERT' 27 | }, 28 | { 29 | img: require('../../src/assets/images/milkshake.png'), 30 | name: 'MILKSHAKE' 31 | }, 32 | ] 33 | 34 | export default class Main extends Component { 35 | renderListView(rowData) { 36 | return ( 37 | 38 | {rowData.name} 39 | 40 | ) 41 | } 42 | render() { 43 | const { openDrawer } = this.props.navigation; 44 | return ( 45 | 46 | openDrawer()} 49 | onPressSearch={() => {alert('onPressSearch')}} 50 | onPressBasket={() => {alert('onPressBasket')}} 51 | /> 52 | 53 | 54 | this.renderListView(rowData)} 57 | /> 58 | 59 | 60 | ) 61 | } 62 | } -------------------------------------------------------------------------------- /src/screens/auth/Login.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, View, Image, TouchableOpacity, Text, TextInput } from 'react-native'; 3 | import BaseImagePage from '../../components/BaseImagePage'; 4 | import SocialButton from '../../components/SocialButton'; 5 | import { LoginManager, AccessToken } from 'react-native-fbsdk'; 6 | 7 | class Page extends Component { 8 | constructor(props) { 9 | super(props); 10 | 11 | this.state = { 12 | email: '', 13 | password: '' 14 | }; 15 | 16 | this.onPressFacebookLogin = this.onPressFacebookLogin.bind(this); 17 | } 18 | 19 | onPressFacebookLogin() { 20 | LoginManager.logInWithReadPermissions(['public_profile', 'email']) 21 | .then((result) => { 22 | if(result.isCancelled) { 23 | console.log("cancelled fb login"); 24 | return; 25 | } 26 | 27 | return AccessToken.getCurrentAccessToken() 28 | }) 29 | .then((data) => { 30 | console.log("FB Data", data); 31 | // this.props.dispatch(loginWithFacebook(data.accessToken)); 32 | }) 33 | } 34 | 35 | render() { 36 | return ( 37 | 38 | 39 | 40 | 45 | 46 | 47 | 54 | 60 | 61 | 62 | 63 | or 64 | 65 | 66 | 67 | this.setState({email: value})} 70 | placeholder="Email Address" 71 | placeholderTextColor="black" 72 | textContentType="emailAddress" 73 | underlineColorAndroid="transparent" 74 | keyboardType="email-address" 75 | returnKeyType="next" 76 | style={styles.input} 77 | /> 78 | this.setState({password: value})} 81 | placeholder="Password" 82 | placeholderTextColor="black" 83 | textContentType="password" 84 | underlineColorAndroid="transparent" 85 | returnKeyType="done" 86 | secureTextEntry 87 | style={[styles.input, {marginTop: 15}]} 88 | /> 89 | 90 | 91 | this.props.navigation.navigate('Main')} 95 | > 96 | 97 | LOGIN 98 | 99 | 100 | 101 | 102 | this.props.navigation.navigate('Signup')} 105 | style={[styles.button, {width: '100%'}]} 106 | > 107 | 108 | New? Sign up 109 | 110 | 111 | 112 | 113 | 114 | ); 115 | } 116 | } 117 | 118 | const styles = StyleSheet.create({ 119 | button: { 120 | height: 35, 121 | width: '40%', 122 | backgroundColor: 'rgb(255, 255, 255)', 123 | opacity: 0.75, 124 | alignItems: 'center', 125 | justifyContent: 'center', 126 | borderRadius: 5 127 | }, 128 | input: { 129 | height: 30, 130 | paddingHorizontal: 10, 131 | paddingVertical: 0, 132 | alignItems: 'center', 133 | borderColor: 'white', 134 | borderWidth: 1, 135 | fontFamily: 'MyriadPro-Regular', 136 | fontSize: 12, 137 | backgroundColor: 'rgba(255, 255, 255, 0.46)', 138 | } 139 | }); 140 | 141 | export default Page; -------------------------------------------------------------------------------- /src/screens/auth/Signup.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { StyleSheet, View, Image, Text, TouchableOpacity } from 'react-native'; 3 | import BaseImagePage from '../../components/BaseImagePage'; 4 | import styles from '../../styles/auth/Signup'; 5 | import MyTextInput from '../../components/MyTextInput'; 6 | import Dropdown from '../../components/DropDown'; 7 | 8 | export default class Main extends Component { 9 | constructor(props) { 10 | super(props); 11 | this.state = { 12 | gender: 'Male' 13 | } 14 | } 15 | render() { 16 | const genderType =[ 17 | { value: 'Male' }, 18 | { value: 'Female' } 19 | ]; 20 | return ( 21 | 22 | 23 | 24 | 25 | this.props.navigation.navigate('Login')} 27 | > 28 | {'<'} 29 | 30 | 31 | 32 | SIGN UP 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | this.setState({gender: value})} 46 | /> 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | SIGN UP 56 | 57 | 58 | 59 | 60 | ) 61 | } 62 | } -------------------------------------------------------------------------------- /src/screens/payment.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, ImageBackground, Text, TouchableOpacity, ScrollView } from 'react-native'; 3 | import styles from '../styles/payment'; 4 | import HeaderView from '../components/HeaderView_Cart'; 5 | import { Card, List } from 'native-base'; 6 | 7 | export default class Payment extends Component { 8 | constructor(props){ 9 | super(props) 10 | this.state = { 11 | } 12 | } 13 | 14 | render() { 15 | return ( 16 | 17 | {alert('onPressMenu')}} 20 | /> 21 | 22 | 23 | ) 24 | } 25 | } -------------------------------------------------------------------------------- /src/styles/Cart.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | margin: 10, 7 | backgroundColor: 'transparent', 8 | }, 9 | cartSubView1: { 10 | flexDirection: 'row', 11 | justifyContent: 'space-between', 12 | }, 13 | font1: { 14 | fontSize: 14, 15 | fontFamily: 'MyriadPro-Regular', 16 | fontWeight: '500', 17 | color: 'black', 18 | }, 19 | font2: { 20 | fontSize: 14, 21 | fontFamily: 'MyriadPro-Regular', 22 | color: 'black', 23 | }, 24 | font3: { 25 | fontSize: 10, 26 | fontFamily: 'MyriadPro-Regular', 27 | color: 'black', 28 | }, 29 | line: { 30 | height: 1, 31 | backgroundColor: '#d7d7d7' 32 | }, 33 | spin: { 34 | flexDirection: 'row' 35 | }, 36 | spinLeft: { 37 | width: 20, 38 | height: 20, 39 | justifyContent: 'center', 40 | borderRadius: 0 41 | }, 42 | spinText: { 43 | fontSize: 20, 44 | fontFamily: 'MyriadPro-Regular', 45 | color: 'black' 46 | }, 47 | spinValueText: { 48 | fontSize: 16, 49 | fontFamily: 'MyriadPro-Regular', 50 | color: 'white' 51 | }, 52 | EditMeal: { 53 | borderColor: '#02abb1', 54 | width: 60, 55 | height: 20, 56 | justifyContent: 'center', 57 | marginLeft: 5, 58 | }, 59 | EditMealText: { 60 | fontSize: 10, 61 | fontFamily: 'MyriadPro-Regular', 62 | color: '#02abb1' 63 | }, 64 | CheckoutButton: { 65 | width: '100%', 66 | height: 30, 67 | backgroundColor: '#f15a2c', 68 | alignItems: 'center', 69 | justifyContent: 'center', 70 | }, 71 | CheckoutText: { 72 | fontSize: 14, 73 | fontFamily: 'MyriadPro-Regular', 74 | color: 'white', 75 | } 76 | }) -------------------------------------------------------------------------------- /src/styles/Customize.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | margin: 10, 7 | backgroundColor: '#f7f8f8', 8 | }, 9 | img: { 10 | width: '100%', 11 | height: 200, 12 | padding: 10, 13 | }, 14 | closeIcon: { 15 | fontSize: 30, 16 | color: 'white', 17 | }, 18 | titleView: { 19 | height: 100, 20 | width: '100%', 21 | padding: 20, 22 | flexDirection: 'row', 23 | }, 24 | subTitleView1: { 25 | flex: 1 26 | }, 27 | subTitleView2: { 28 | width: 150, 29 | alignItems: 'flex-end' 30 | }, 31 | itemTitle2: { 32 | flexDirection: 'row', 33 | alignItems: 'flex-end', 34 | }, 35 | font1: { 36 | fontSize: 16, 37 | fontFamily: 'MyriadPro-Regular', 38 | fontWeight: '500', 39 | color: 'black', 40 | marginBottom: 5 41 | }, 42 | font2: { 43 | fontSize: 10, 44 | fontFamily: 'MyriadPro-Regular', 45 | color: 'black' 46 | }, 47 | font3: { 48 | fontSize: 16, 49 | fontFamily: 'MyriadPro-Regular', 50 | fontWeight: '500', 51 | color: 'black', 52 | }, 53 | spin: { 54 | flexDirection: 'row' 55 | }, 56 | spinLeft: { 57 | width: 30, 58 | height: 30, 59 | justifyContent: 'center', 60 | borderRadius: 0 61 | }, 62 | spinText: { 63 | fontSize: 24, 64 | fontFamily: 'MyriadPro-Regular', 65 | color: 'black' 66 | }, 67 | spinValueText: { 68 | fontSize: 20, 69 | fontFamily: 'MyriadPro-Regular', 70 | color: 'white' 71 | }, 72 | mealView: { 73 | flexDirection: 'row', 74 | }, 75 | mealButtonSelected: { 76 | backgroundColor: '#707070', 77 | borderRadius: 0, 78 | height: 20, 79 | justifyContent: 'center', 80 | flex: 0.5 81 | }, 82 | mealButtonUnselected: { 83 | backgroundColor: 'black', 84 | borderRadius: 0, 85 | height: 20, 86 | justifyContent: 'center', 87 | flex: 0.5 88 | }, 89 | mealText: { 90 | fontSize: 12, 91 | fontFamily: 'MyriadPro-Regular', 92 | color: 'white', 93 | fontWeight: '500' 94 | }, 95 | comboView: { 96 | flex: 1, 97 | padding: 20 98 | }, 99 | subComboView: { 100 | padding: 5, 101 | borderWidth: 1, 102 | borderRadius: 1, 103 | borderColor: 'black', 104 | marginTop: 5, 105 | }, 106 | subComboView1: { 107 | justifyContent: 'space-between', 108 | flexDirection: 'row', 109 | }, 110 | comboText: { 111 | fontSize: 14, 112 | fontFamily: 'MyriadPro-Regular', 113 | color: '#282827', 114 | }, 115 | comboText_bold: { 116 | fontSize: 14, 117 | fontFamily: 'MyriadPro-Regular', 118 | color: '#282827', 119 | fontWeight: '500' 120 | }, 121 | buttonAddCart: { 122 | backgroundColor: '#f15a2c', 123 | height: 30, 124 | width: '100%', 125 | justifyContent: 'center', 126 | alignItems: 'center', 127 | } 128 | }) -------------------------------------------------------------------------------- /src/styles/Home.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | backgroundColor: 'white' 7 | }, 8 | button: { 9 | flex: 1, 10 | height: 120, 11 | alignItems: 'center', 12 | justifyContent: 'center' 13 | } 14 | }) -------------------------------------------------------------------------------- /src/styles/InsideMenu.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | margin: 10, 7 | backgroundColor: '#ececec', 8 | }, 9 | Bestseller: { 10 | flexDirection: 'row', 11 | justifyContent: 'flex-end', 12 | marginVertical: 5, 13 | paddingHorizontal: 10 14 | }, 15 | iconView1: { 16 | marginLeft: 15, 17 | flexDirection: 'row', 18 | alignItems: 'center' 19 | }, 20 | icon1: { 21 | color: '#f16939', 22 | fontSize: 10, 23 | marginRight: 5, 24 | }, 25 | icon2: { 26 | color: '#03b6c0', 27 | fontSize: 10, 28 | marginRight: 5, 29 | }, 30 | gridView: { 31 | flex: 1, 32 | }, 33 | itemContainer: { 34 | overflow: 'hidden', 35 | borderRadius: 5, 36 | height: 200, 37 | backgroundColor: 'white' 38 | }, 39 | detailView: { 40 | height: 50, 41 | margin: 5, 42 | }, 43 | itemTitle: { 44 | flexDirection: 'row', 45 | justifyContent: 'space-between' 46 | }, 47 | itemTitle1: { 48 | flexDirection: 'row', 49 | alignItems: 'center', 50 | }, 51 | itemTitle2: { 52 | flexDirection: 'row', 53 | alignItems: 'flex-end', 54 | }, 55 | font1: { 56 | fontSize: 14, 57 | fontFamily: 'MyriadPro-Regular', 58 | fontWeight: '500' 59 | }, 60 | font2: { 61 | fontSize: 8, 62 | fontFamily: 'MyriadPro-Regular' 63 | } 64 | 65 | }) -------------------------------------------------------------------------------- /src/styles/Locations.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | margin: 10, 7 | backgroundColor: '#f7f8f8', 8 | }, 9 | card: { 10 | height: 150, 11 | alignItems: 'center', 12 | paddingVertical: 15, 13 | }, 14 | item1: { 15 | marginVertical: 3 16 | }, 17 | font1: { 18 | fontSize: 16, 19 | fontFamily: 'MyriadPro-Regular' 20 | }, 21 | font2: { 22 | fontSize: 14, 23 | fontFamily: 'MyriadPro-Regular' 24 | }, 25 | font3: { 26 | fontSize: 24, 27 | fontFamily: 'Metrics' 28 | } 29 | }) -------------------------------------------------------------------------------- /src/styles/MyAccount.js: -------------------------------------------------------------------------------- 1 | import { StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | 5 | }) -------------------------------------------------------------------------------- /src/styles/Order.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | HeaderView: { 5 | width: '100%', 6 | height: 40, 7 | flexDirection: 'row', 8 | backgroundColor: 'white', 9 | justifyContent: 'center', 10 | paddingRight: 10, 11 | paddingLeft: 0, 12 | }, 13 | contentView: { 14 | flex: 1, 15 | backgroundColor: 'white' 16 | }, 17 | titleFont: { 18 | color: 'black', 19 | fontSize: 14, 20 | fontFamily: 'MyriadPro-Regular' 21 | }, 22 | leftHeaderView: { 23 | width: 60, 24 | alignItems: 'center', 25 | justifyContent: 'center' 26 | }, 27 | titleHeaderView: { 28 | flex: 1, 29 | alignItems: 'center', 30 | justifyContent: 'center' 31 | }, 32 | RightHeaderView: { 33 | width: 60, 34 | flexDirection: 'row', 35 | alignItems: 'center', 36 | justifyContent: 'flex-end' 37 | }, 38 | listText: { 39 | color: 'white', 40 | fontSize: 20, 41 | fontFamily: 'MyriadPro-Semibold' 42 | } 43 | }) -------------------------------------------------------------------------------- /src/styles/auth/Signup.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | HeaderView: { 5 | width: '100%', 6 | height: 50, 7 | flexDirection: 'row', 8 | }, 9 | contentView: { 10 | flex: 1, 11 | marginHorizontal: 15, 12 | marginBottom: 15 13 | }, 14 | titleFont: { 15 | color: '#a9b6b7', 16 | fontSize: 14, 17 | fontFamily: 'MyriadPro-Regular' 18 | }, 19 | leftHeaderView: { 20 | width: 40, 21 | alignItems: 'center', 22 | justifyContent: 'center' 23 | }, 24 | titleHeaderView: { 25 | flex: 1, 26 | alignItems: 'center', 27 | justifyContent: 'center' 28 | }, 29 | RightHeaderView: { 30 | width: 40, 31 | }, 32 | textView1: { 33 | height: 40, 34 | flexDirection: 'row', 35 | justifyContent: 'center', 36 | }, 37 | inputView1: { 38 | flex: 1, 39 | }, 40 | font1: { 41 | fontSize: 14, 42 | color: 'white', 43 | alignItems: 'flex-end' 44 | }, 45 | button: { 46 | width: '100%', 47 | height: 40, 48 | alignItems: 'center', 49 | justifyContent: 'center', 50 | borderWidth: 1, 51 | borderColor: 'white', 52 | borderRadius: 3, 53 | }, 54 | buttonText: { 55 | fontSize: 14, 56 | color: 'white', 57 | fontFamily: 'MyriadPro-Regular' 58 | } 59 | 60 | }) -------------------------------------------------------------------------------- /src/styles/payment.js: -------------------------------------------------------------------------------- 1 | import { Dimensions, StyleSheet } from 'react-native'; 2 | 3 | export default StyleSheet.create({ 4 | contentView: { 5 | flex: 1, 6 | margin: 10, 7 | backgroundColor: '#f7f8f8', 8 | }, 9 | }) --------------------------------------------------------------------------------