@ -0,0 +1,6 @@ |
||||
|
||||
[android] |
||||
target = Google Inc.:Google APIs:23 |
||||
|
||||
[maven_repositories] |
||||
central = https://repo1.maven.org/maven2 |
@ -0,0 +1,17 @@ |
||||
# http://editorconfig.org |
||||
root = true |
||||
|
||||
[*] |
||||
charset = utf-8 |
||||
end_of_line = lf |
||||
indent_size = 4 |
||||
indent_style = tab |
||||
insert_final_newline = true |
||||
trim_trailing_whitespace = true |
||||
|
||||
[*.md] |
||||
trim_trailing_whitespace = false |
||||
|
||||
[{package,package-lock}.json] |
||||
indent_size = 2 |
||||
indent_style = space |
@ -0,0 +1,67 @@ |
||||
[ignore] |
||||
; We fork some components by platform |
||||
.*/*[.]android.js |
||||
|
||||
; Ignore "BUCK" generated dirs |
||||
<PROJECT_ROOT>/\.buckd/ |
||||
|
||||
; Ignore unexpected extra "@providesModule" |
||||
.*/node_modules/.*/node_modules/fbjs/.* |
||||
|
||||
; Ignore duplicate module providers |
||||
; For RN Apps installed via npm, "Libraries" folder is inside |
||||
; "node_modules/react-native" but in the source repo it is in the root |
||||
.*/Libraries/react-native/React.js |
||||
|
||||
; Ignore polyfills |
||||
.*/Libraries/polyfills/.* |
||||
|
||||
; Ignore metro |
||||
.*/node_modules/metro/.* |
||||
|
||||
[include] |
||||
|
||||
[libs] |
||||
node_modules/react-native/Libraries/react-native/react-native-interface.js |
||||
node_modules/react-native/flow/ |
||||
node_modules/react-native/flow-github/ |
||||
|
||||
[options] |
||||
emoji=true |
||||
|
||||
module.system=haste |
||||
module.system.haste.use_name_reducers=true |
||||
# get basename |
||||
module.system.haste.name_reducers='^.*/\([a-zA-Z0-9$_.-]+\.js\(\.flow\)?\)$' -> '\1' |
||||
# strip .js or .js.flow suffix |
||||
module.system.haste.name_reducers='^\(.*\)\.js\(\.flow\)?$' -> '\1' |
||||
# strip .ios suffix |
||||
module.system.haste.name_reducers='^\(.*\)\.ios$' -> '\1' |
||||
module.system.haste.name_reducers='^\(.*\)\.android$' -> '\1' |
||||
module.system.haste.name_reducers='^\(.*\)\.native$' -> '\1' |
||||
module.system.haste.paths.blacklist=.*/__tests__/.* |
||||
module.system.haste.paths.blacklist=.*/__mocks__/.* |
||||
module.system.haste.paths.blacklist=<PROJECT_ROOT>/node_modules/react-native/Libraries/Animated/src/polyfills/.* |
||||
module.system.haste.paths.whitelist=<PROJECT_ROOT>/node_modules/react-native/Libraries/.* |
||||
|
||||
munge_underscores=true |
||||
|
||||
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' |
||||
|
||||
module.file_ext=.js |
||||
module.file_ext=.jsx |
||||
module.file_ext=.json |
||||
module.file_ext=.native.js |
||||
|
||||
suppress_type=$FlowIssue |
||||
suppress_type=$FlowFixMe |
||||
suppress_type=$FlowFixMeProps |
||||
suppress_type=$FlowFixMeState |
||||
|
||||
suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) |
||||
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ |
||||
suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy |
||||
suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError |
||||
|
||||
[version] |
||||
^0.75.0 |
@ -0,0 +1 @@ |
||||
*.pbxproj -text |
@ -0,0 +1,56 @@ |
||||
# OSX |
||||
# |
||||
.DS_Store |
||||
|
||||
# Xcode |
||||
# |
||||
build/ |
||||
*.pbxuser |
||||
!default.pbxuser |
||||
*.mode1v3 |
||||
!default.mode1v3 |
||||
*.mode2v3 |
||||
!default.mode2v3 |
||||
*.perspectivev3 |
||||
!default.perspectivev3 |
||||
xcuserdata |
||||
*.xccheckout |
||||
*.moved-aside |
||||
DerivedData |
||||
*.hmap |
||||
*.ipa |
||||
*.xcuserstate |
||||
project.xcworkspace |
||||
|
||||
# Android/IntelliJ |
||||
# |
||||
build/ |
||||
.idea |
||||
.gradle |
||||
local.properties |
||||
*.iml |
||||
|
||||
# node.js |
||||
# |
||||
node_modules/ |
||||
npm-debug.log |
||||
yarn-error.log |
||||
|
||||
# BUCK |
||||
buck-out/ |
||||
\.buckd/ |
||||
*.keystore |
||||
|
||||
# fastlane |
||||
# |
||||
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the |
||||
# screenshots whenever they are needed. |
||||
# For more information about the recommended setup visit: |
||||
# https://docs.fastlane.tools/best-practices/source-control/ |
||||
|
||||
*/fastlane/report.xml |
||||
*/fastlane/Preview.html |
||||
*/fastlane/screenshots |
||||
|
||||
# Bundle artifact |
||||
*.jsbundle |
@ -0,0 +1 @@ |
||||
{} |
@ -0,0 +1,49 @@ |
||||
import React, { Component } from 'react'; |
||||
import { Platform, StyleSheet, Text, View } from 'react-native'; |
||||
import { createBottomTabNavigator } from 'react-navigation'; |
||||
|
||||
import BrowserView from './app/components/BrowserView' |
||||
|
||||
const instructions = Platform.select({ |
||||
ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', |
||||
android: |
||||
'Double tap R on your keyboard to reload,\n' + |
||||
'Shake or press menu button for dev menu', |
||||
}); |
||||
|
||||
class App extends Component { |
||||
render() { |
||||
return ( |
||||
<View style={styles.container}> |
||||
<Text style={styles.welcome}>Welcome to React Bar!</Text> |
||||
<Text style={styles.instructions}>To get started, edit App.js</Text> |
||||
<Text style={styles.instructions}>{instructions}</Text> |
||||
</View> |
||||
); |
||||
} |
||||
} |
||||
|
||||
const styles = StyleSheet.create({ |
||||
container: { |
||||
flex: 1, |
||||
justifyContent: 'center', |
||||
alignItems: 'center', |
||||
backgroundColor: '#F5FCFF', |
||||
}, |
||||
welcome: { |
||||
fontSize: 20, |
||||
textAlign: 'center', |
||||
margin: 10, |
||||
}, |
||||
instructions: { |
||||
textAlign: 'center', |
||||
color: '#333333', |
||||
marginBottom: 5, |
||||
}, |
||||
}); |
||||
|
||||
export default createBottomTabNavigator({ |
||||
Home: { |
||||
screen: BrowserView |
||||
}, |
||||
}); |
@ -0,0 +1,9 @@ |
||||
- [ ] i18n |
||||
- [ ] design systems |
||||
- [ ] android |
||||
- [ ] ci |
||||
- [ ] integration testing |
||||
- [ ] repo structure |
||||
- [ ] documentation |
||||
- [ ] changelog |
||||
- [ ] enable http (not just https) |
@ -0,0 +1,65 @@ |
||||
# To learn about Buck see [Docs](https://buckbuild.com/). |
||||
# To run your application with Buck: |
||||
# - install Buck |
||||
# - `npm start` - to start the packager |
||||
# - `cd android` |
||||
# - `keytool -genkey -v -keystore keystores/debug.keystore -storepass android -alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US"` |
||||
# - `./gradlew :app:copyDownloadableDepsToLibs` - make all Gradle compile dependencies available to Buck |
||||
# - `buck install -r android/app` - compile, install and run application |
||||
# |
||||
|
||||
lib_deps = [] |
||||
|
||||
for jarfile in glob(['libs/*.jar']): |
||||
name = 'jars__' + jarfile[jarfile.rindex('/') + 1: jarfile.rindex('.jar')] |
||||
lib_deps.append(':' + name) |
||||
prebuilt_jar( |
||||
name = name, |
||||
binary_jar = jarfile, |
||||
) |
||||
|
||||
for aarfile in glob(['libs/*.aar']): |
||||
name = 'aars__' + aarfile[aarfile.rindex('/') + 1: aarfile.rindex('.aar')] |
||||
lib_deps.append(':' + name) |
||||
android_prebuilt_aar( |
||||
name = name, |
||||
aar = aarfile, |
||||
) |
||||
|
||||
android_library( |
||||
name = "all-libs", |
||||
exported_deps = lib_deps, |
||||
) |
||||
|
||||
android_library( |
||||
name = "app-code", |
||||
srcs = glob([ |
||||
"src/main/java/**/*.java", |
||||
]), |
||||
deps = [ |
||||
":all-libs", |
||||
":build_config", |
||||
":res", |
||||
], |
||||
) |
||||
|
||||
android_build_config( |
||||
name = "build_config", |
||||
package = "com.metamask", |
||||
) |
||||
|
||||
android_resource( |
||||
name = "res", |
||||
package = "com.metamask", |
||||
res = "src/main/res", |
||||
) |
||||
|
||||
android_binary( |
||||
name = "app", |
||||
keystore = "//android/keystores:debug", |
||||
manifest = "src/main/AndroidManifest.xml", |
||||
package_type = "debug", |
||||
deps = [ |
||||
":app-code", |
||||
], |
||||
) |
@ -0,0 +1,151 @@ |
||||
apply plugin: "com.android.application" |
||||
|
||||
import com.android.build.OutputFile |
||||
|
||||
/** |
||||
* The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets |
||||
* and bundleReleaseJsAndAssets). |
||||
* These basically call `react-native bundle` with the correct arguments during the Android build |
||||
* cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the |
||||
* bundle directly from the development server. Below you can see all the possible configurations |
||||
* and their defaults. If you decide to add a configuration block, make sure to add it before the |
||||
* `apply from: "../../node_modules/react-native/react.gradle"` line. |
||||
* |
||||
* project.ext.react = [ |
||||
* // the name of the generated asset file containing your JS bundle |
||||
* bundleAssetName: "index.android.bundle", |
||||
* |
||||
* // the entry file for bundle generation |
||||
* entryFile: "index.android.js", |
||||
* |
||||
* // whether to bundle JS and assets in debug mode |
||||
* bundleInDebug: false, |
||||
* |
||||
* // whether to bundle JS and assets in release mode |
||||
* bundleInRelease: true, |
||||
* |
||||
* // whether to bundle JS and assets in another build variant (if configured). |
||||
* // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants |
||||
* // The configuration property can be in the following formats |
||||
* // 'bundleIn${productFlavor}${buildType}' |
||||
* // 'bundleIn${buildType}' |
||||
* // bundleInFreeDebug: true, |
||||
* // bundleInPaidRelease: true, |
||||
* // bundleInBeta: true, |
||||
* |
||||
* // whether to disable dev mode in custom build variants (by default only disabled in release) |
||||
* // for example: to disable dev mode in the staging build type (if configured) |
||||
* devDisabledInStaging: true, |
||||
* // The configuration property can be in the following formats |
||||
* // 'devDisabledIn${productFlavor}${buildType}' |
||||
* // 'devDisabledIn${buildType}' |
||||
* |
||||
* // the root of your project, i.e. where "package.json" lives |
||||
* root: "../../", |
||||
* |
||||
* // where to put the JS bundle asset in debug mode |
||||
* jsBundleDirDebug: "$buildDir/intermediates/assets/debug", |
||||
* |
||||
* // where to put the JS bundle asset in release mode |
||||
* jsBundleDirRelease: "$buildDir/intermediates/assets/release", |
||||
* |
||||
* // where to put drawable resources / React Native assets, e.g. the ones you use via |
||||
* // require('./image.png')), in debug mode |
||||
* resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", |
||||
* |
||||
* // where to put drawable resources / React Native assets, e.g. the ones you use via |
||||
* // require('./image.png')), in release mode |
||||
* resourcesDirRelease: "$buildDir/intermediates/res/merged/release", |
||||
* |
||||
* // by default the gradle tasks are skipped if none of the JS files or assets change; this means |
||||
* // that we don't look at files in android/ or ios/ to determine whether the tasks are up to |
||||
* // date; if you have any other folders that you want to ignore for performance reasons (gradle |
||||
* // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ |
||||
* // for example, you might want to remove it from here. |
||||
* inputExcludes: ["android/**", "ios/**"], |
||||
* |
||||
* // override which node gets called and with what additional arguments |
||||
* nodeExecutableAndArgs: ["node"], |
||||
* |
||||
* // supply additional arguments to the packager |
||||
* extraPackagerArgs: [] |
||||
* ] |
||||
*/ |
||||
|
||||
project.ext.react = [ |
||||
entryFile: "index.js" |
||||
] |
||||
|
||||
apply from: "../../node_modules/react-native/react.gradle" |
||||
|
||||
/** |
||||
* Set this to true to create two separate APKs instead of one: |
||||
* - An APK that only works on ARM devices |
||||
* - An APK that only works on x86 devices |
||||
* The advantage is the size of the APK is reduced by about 4MB. |
||||
* Upload all the APKs to the Play Store and people will download |
||||
* the correct one based on the CPU architecture of their device. |
||||
*/ |
||||
def enableSeparateBuildPerCPUArchitecture = false |
||||
|
||||
/** |
||||
* Run Proguard to shrink the Java bytecode in release builds. |
||||
*/ |
||||
def enableProguardInReleaseBuilds = false |
||||
|
||||
android { |
||||
compileSdkVersion rootProject.ext.compileSdkVersion |
||||
buildToolsVersion rootProject.ext.buildToolsVersion |
||||
|
||||
defaultConfig { |
||||
applicationId "com.metamask" |
||||
minSdkVersion rootProject.ext.minSdkVersion |
||||
targetSdkVersion rootProject.ext.targetSdkVersion |
||||
versionCode 1 |
||||
versionName "1.0" |
||||
ndk { |
||||
abiFilters "armeabi-v7a", "x86" |
||||
} |
||||
} |
||||
splits { |
||||
abi { |
||||
reset() |
||||
enable enableSeparateBuildPerCPUArchitecture |
||||
universalApk false // If true, also generate a universal APK |
||||
include "armeabi-v7a", "x86" |
||||
} |
||||
} |
||||
buildTypes { |
||||
release { |
||||
minifyEnabled enableProguardInReleaseBuilds |
||||
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" |
||||
} |
||||
} |
||||
// applicationVariants are e.g. debug, release |
||||
applicationVariants.all { variant -> |
||||
variant.outputs.each { output -> |
||||
// For each separate APK per architecture, set a unique version code as described here: |
||||
// http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits |
||||
def versionCodes = ["armeabi-v7a":1, "x86":2] |
||||
def abi = output.getFilter(OutputFile.ABI) |
||||
if (abi != null) { // null for the universal-debug, universal-release variants |
||||
output.versionCodeOverride = |
||||
versionCodes.get(abi) * 1048576 + defaultConfig.versionCode |
||||
} |
||||
} |
||||
} |
||||
} |
||||
|
||||
dependencies { |
||||
compile project(':react-native-vector-icons') |
||||
compile fileTree(dir: "libs", include: ["*.jar"]) |
||||
compile "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" |
||||
compile "com.facebook.react:react-native:+" // From node_modules |
||||
} |
||||
|
||||
// Run this once to be able to run the application with BUCK |
||||
// puts all compile dependencies into folder libs for BUCK to use |
||||
task copyDownloadableDepsToLibs(type: Copy) { |
||||
from configurations.compile |
||||
into 'libs' |
||||
} |
@ -0,0 +1,17 @@ |
||||
# Add project specific ProGuard rules here. |
||||
# By default, the flags in this file are appended to flags specified |
||||
# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt |
||||
# You can edit the include path and order by changing the proguardFiles |
||||
# directive in build.gradle. |
||||
# |
||||
# For more details, see |
||||
# http://developer.android.com/guide/developing/tools/proguard.html |
||||
|
||||
# Add any project specific keep options here: |
||||
|
||||
# If your project uses WebView with JS, uncomment the following |
||||
# and specify the fully qualified class name to the JavaScript interface |
||||
# class: |
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview { |
||||
# public *; |
||||
#} |
@ -0,0 +1,26 @@ |
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" |
||||
package="com.metamask"> |
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" /> |
||||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> |
||||
|
||||
<application |
||||
android:name=".MainApplication" |
||||
android:label="@string/app_name" |
||||
android:icon="@mipmap/ic_launcher" |
||||
android:allowBackup="false" |
||||
android:theme="@style/AppTheme"> |
||||
<activity |
||||
android:name=".MainActivity" |
||||
android:label="@string/app_name" |
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize" |
||||
android:windowSoftInputMode="adjustResize"> |
||||
<intent-filter> |
||||
<action android:name="android.intent.action.MAIN" /> |
||||
<category android:name="android.intent.category.LAUNCHER" /> |
||||
</intent-filter> |
||||
</activity> |
||||
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" /> |
||||
</application> |
||||
|
||||
</manifest> |
@ -0,0 +1,15 @@ |
||||
package com.metamask; |
||||
|
||||
import com.facebook.react.ReactActivity; |
||||
|
||||
public class MainActivity extends ReactActivity { |
||||
|
||||
/** |
||||
* Returns the name of the main component registered from JavaScript. |
||||
* This is used to schedule rendering of the component. |
||||
*/ |
||||
@Override |
||||
protected String getMainComponentName() { |
||||
return "MetaMask"; |
||||
} |
||||
} |
@ -0,0 +1,47 @@ |
||||
package com.metamask; |
||||
|
||||
import android.app.Application; |
||||
|
||||
import com.facebook.react.ReactApplication; |
||||
import com.oblador.vectoricons.VectorIconsPackage; |
||||
import com.facebook.react.ReactNativeHost; |
||||
import com.facebook.react.ReactPackage; |
||||
import com.facebook.react.shell.MainReactPackage; |
||||
import com.facebook.soloader.SoLoader; |
||||
|
||||
import java.util.Arrays; |
||||
import java.util.List; |
||||
|
||||
public class MainApplication extends Application implements ReactApplication { |
||||
|
||||
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { |
||||
@Override |
||||
public boolean getUseDeveloperSupport() { |
||||
return BuildConfig.DEBUG; |
||||
} |
||||
|
||||
@Override |
||||
protected List<ReactPackage> getPackages() { |
||||
return Arrays.<ReactPackage>asList( |
||||
new MainReactPackage(), |
||||
new VectorIconsPackage() |
||||
); |
||||
} |
||||
|
||||
@Override |
||||
protected String getJSMainModuleName() { |
||||
return "index"; |
||||
} |
||||
}; |
||||
|
||||
@Override |
||||
public ReactNativeHost getReactNativeHost() { |
||||
return mReactNativeHost; |
||||
} |
||||
|
||||
@Override |
||||
public void onCreate() { |
||||
super.onCreate(); |
||||
SoLoader.init(this, /* native exopackage */ false); |
||||
} |
||||
} |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 15 KiB |
@ -0,0 +1,3 @@ |
||||
<resources> |
||||
<string name="app_name">MetaMask</string> |
||||
</resources> |
@ -0,0 +1,8 @@ |
||||
<resources> |
||||
|
||||
<!-- Base application theme. --> |
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> |
||||
<!-- Customize your theme here. --> |
||||
</style> |
||||
|
||||
</resources> |
@ -0,0 +1,40 @@ |
||||
// Top-level build file where you can add configuration options common to all sub-projects/modules. |
||||
|
||||
buildscript { |
||||
repositories { |
||||
jcenter() |
||||
maven { |
||||
url 'https://maven.google.com/' |
||||
name 'Google' |
||||
} |
||||
} |
||||
dependencies { |
||||
classpath 'com.android.tools.build:gradle:2.3.3' |
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong |
||||
// in the individual module build.gradle files |
||||
} |
||||
} |
||||
|
||||
allprojects { |
||||
repositories { |
||||
mavenLocal() |
||||
jcenter() |
||||
maven { |
||||
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm |
||||
url "$rootDir/../node_modules/react-native/android" |
||||
} |
||||
maven { |
||||
url 'https://maven.google.com/' |
||||
name 'Google' |
||||
} |
||||
} |
||||
} |
||||
|
||||
ext { |
||||
buildToolsVersion = "26.0.3" |
||||
minSdkVersion = 16 |
||||
compileSdkVersion = 26 |
||||
targetSdkVersion = 26 |
||||
supportLibVersion = "26.1.0" |
||||
} |
@ -0,0 +1,20 @@ |
||||
# Project-wide Gradle settings. |
||||
|
||||
# IDE (e.g. Android Studio) users: |
||||
# Gradle settings configured through the IDE *will override* |
||||
# any settings specified in this file. |
||||
|
||||
# For more details on how to configure your build environment visit |
||||
# http://www.gradle.org/docs/current/userguide/build_environment.html |
||||
|
||||
# Specifies the JVM arguments used for the daemon process. |
||||
# The setting is particularly useful for tweaking memory settings. |
||||
# Default value: -Xmx10248m -XX:MaxPermSize=256m |
||||
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 |
||||
|
||||
# When configured, Gradle will run in incubating parallel mode. |
||||
# This option should only be used with decoupled projects. More details, visit |
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects |
||||
# org.gradle.parallel=true |
||||
|
||||
android.useDeprecatedNdk=true |
@ -0,0 +1,5 @@ |
||||
distributionBase=GRADLE_USER_HOME |
||||
distributionPath=wrapper/dists |
||||
zipStoreBase=GRADLE_USER_HOME |
||||
zipStorePath=wrapper/dists |
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-3.5.1-all.zip |
@ -0,0 +1,164 @@ |
||||
#!/usr/bin/env bash |
||||
|
||||
############################################################################## |
||||
## |
||||
## Gradle start up script for UN*X |
||||
## |
||||
############################################################################## |
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. |
||||
DEFAULT_JVM_OPTS="" |
||||
|
||||
APP_NAME="Gradle" |
||||
APP_BASE_NAME=`basename "$0"` |
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value. |
||||
MAX_FD="maximum" |
||||
|
||||
warn ( ) { |
||||
echo "$*" |
||||
} |
||||
|
||||
die ( ) { |
||||
echo |
||||
echo "$*" |
||||
echo |
||||
exit 1 |
||||
} |
||||
|
||||
# OS specific support (must be 'true' or 'false'). |
||||
cygwin=false |
||||
msys=false |
||||
darwin=false |
||||
case "`uname`" in |
||||
CYGWIN* ) |
||||
cygwin=true |
||||
;; |
||||
Darwin* ) |
||||
darwin=true |
||||
;; |
||||
MINGW* ) |
||||
msys=true |
||||
;; |
||||
esac |
||||
|
||||
# For Cygwin, ensure paths are in UNIX format before anything is touched. |
||||
if $cygwin ; then |
||||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` |
||||
fi |
||||
|
||||
# Attempt to set APP_HOME |
||||
# Resolve links: $0 may be a link |
||||
PRG="$0" |
||||
# Need this for relative symlinks. |
||||
while [ -h "$PRG" ] ; do |
||||
ls=`ls -ld "$PRG"` |
||||
link=`expr "$ls" : '.*-> \(.*\)$'` |
||||
if expr "$link" : '/.*' > /dev/null; then |
||||
PRG="$link" |
||||
else |
||||
PRG=`dirname "$PRG"`"/$link" |
||||
fi |
||||
done |
||||
SAVED="`pwd`" |
||||
cd "`dirname \"$PRG\"`/" >&- |
||||
APP_HOME="`pwd -P`" |
||||
cd "$SAVED" >&- |
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar |
||||
|
||||
# Determine the Java command to use to start the JVM. |
||||
if [ -n "$JAVA_HOME" ] ; then |
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then |
||||
# IBM's JDK on AIX uses strange locations for the executables |
||||
JAVACMD="$JAVA_HOME/jre/sh/java" |
||||
else |
||||
JAVACMD="$JAVA_HOME/bin/java" |
||||
fi |
||||
if [ ! -x "$JAVACMD" ] ; then |
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME |
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the |
||||
location of your Java installation." |
||||
fi |
||||
else |
||||
JAVACMD="java" |
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. |
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the |
||||
location of your Java installation." |
||||
fi |
||||
|
||||
# Increase the maximum file descriptors if we can. |
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then |
||||
MAX_FD_LIMIT=`ulimit -H -n` |
||||
if [ $? -eq 0 ] ; then |
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then |
||||
MAX_FD="$MAX_FD_LIMIT" |
||||
fi |
||||
ulimit -n $MAX_FD |
||||
if [ $? -ne 0 ] ; then |
||||
warn "Could not set maximum file descriptor limit: $MAX_FD" |
||||
fi |
||||
else |
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" |
||||
fi |
||||
fi |
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock |
||||
if $darwin; then |
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" |
||||
fi |
||||
|
||||
# For Cygwin, switch paths to Windows format before running java |
||||
if $cygwin ; then |
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"` |
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` |
||||
|
||||
# We build the pattern for arguments to be converted via cygpath |
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` |
||||
SEP="" |
||||
for dir in $ROOTDIRSRAW ; do |
||||
ROOTDIRS="$ROOTDIRS$SEP$dir" |
||||
SEP="|" |
||||
done |
||||
OURCYGPATTERN="(^($ROOTDIRS))" |
||||
# Add a user-defined pattern to the cygpath arguments |
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then |
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" |
||||
fi |
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh |
||||
i=0 |
||||
for arg in "$@" ; do |
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` |
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option |
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition |
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` |
||||
else |
||||
eval `echo args$i`="\"$arg\"" |
||||
fi |
||||
i=$((i+1)) |
||||
done |
||||
case $i in |
||||
(0) set -- ;; |
||||
(1) set -- "$args0" ;; |
||||
(2) set -- "$args0" "$args1" ;; |
||||
(3) set -- "$args0" "$args1" "$args2" ;; |
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;; |
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; |
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; |
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; |
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; |
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; |
||||
esac |
||||
fi |
||||
|
||||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules |
||||
function splitJvmOpts() { |
||||
JVM_OPTS=("$@") |
||||
} |
||||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS |
||||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" |
||||
|
||||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" |
@ -0,0 +1,90 @@ |
||||
@if "%DEBUG%" == "" @echo off |
||||
@rem ########################################################################## |
||||
@rem |
||||
@rem Gradle startup script for Windows |
||||
@rem |
||||
@rem ########################################################################## |
||||
|
||||
@rem Set local scope for the variables with windows NT shell |
||||
if "%OS%"=="Windows_NT" setlocal |
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. |
||||
set DEFAULT_JVM_OPTS= |
||||
|
||||
set DIRNAME=%~dp0 |
||||
if "%DIRNAME%" == "" set DIRNAME=. |
||||
set APP_BASE_NAME=%~n0 |
||||
set APP_HOME=%DIRNAME% |
||||
|
||||
@rem Find java.exe |
||||
if defined JAVA_HOME goto findJavaFromJavaHome |
||||
|
||||
set JAVA_EXE=java.exe |
||||
%JAVA_EXE% -version >NUL 2>&1 |
||||
if "%ERRORLEVEL%" == "0" goto init |
||||
|
||||
echo. |
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. |
||||
echo. |
||||
echo Please set the JAVA_HOME variable in your environment to match the |
||||
echo location of your Java installation. |
||||
|
||||
goto fail |
||||
|
||||
:findJavaFromJavaHome |
||||
set JAVA_HOME=%JAVA_HOME:"=% |
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe |
||||
|
||||
if exist "%JAVA_EXE%" goto init |
||||
|
||||
echo. |
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% |
||||
echo. |
||||
echo Please set the JAVA_HOME variable in your environment to match the |
||||
echo location of your Java installation. |
||||
|
||||
goto fail |
||||
|
||||
:init |
||||
@rem Get command-line arguments, handling Windowz variants |
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args |
||||
if "%@eval[2+2]" == "4" goto 4NT_args |
||||
|
||||
:win9xME_args |
||||
@rem Slurp the command line arguments. |
||||
set CMD_LINE_ARGS= |
||||
set _SKIP=2 |
||||
|
||||
:win9xME_args_slurp |
||||
if "x%~1" == "x" goto execute |
||||
|
||||
set CMD_LINE_ARGS=%* |
||||
goto execute |
||||
|
||||
:4NT_args |
||||
@rem Get arguments from the 4NT Shell from JP Software |
||||
set CMD_LINE_ARGS=%$ |
||||
|
||||
:execute |
||||
@rem Setup the command line |
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar |
||||
|
||||
@rem Execute Gradle |
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% |
||||
|
||||
:end |
||||
@rem End local scope for the variables with windows NT shell |
||||
if "%ERRORLEVEL%"=="0" goto mainEnd |
||||
|
||||
:fail |
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of |
||||
rem the _cmd.exe /c_ return code! |
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 |
||||
exit /b 1 |
||||
|
||||
:mainEnd |
||||
if "%OS%"=="Windows_NT" endlocal |
||||
|
||||
:omega |
@ -0,0 +1,8 @@ |
||||
keystore( |
||||
name = "debug", |
||||
properties = "debug.keystore.properties", |
||||
store = "debug.keystore", |
||||
visibility = [ |
||||
"PUBLIC", |
||||
], |
||||
) |
@ -0,0 +1,4 @@ |
||||
key.store=debug.keystore |
||||
key.alias=androiddebugkey |
||||
key.store.password=android |
||||
key.alias.password=android |
@ -0,0 +1,5 @@ |
||||
rootProject.name = 'MetaMask' |
||||
include ':react-native-vector-icons' |
||||
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android') |
||||
|
||||
include ':app' |
@ -0,0 +1,105 @@ |
||||
import React, { Component } from 'react'; |
||||
import { |
||||
Dimensions, |
||||
StyleSheet, |
||||
TextInput, |
||||
View, |
||||
WebView |
||||
} from 'react-native'; |
||||
import Icon from 'react-native-vector-icons/FontAwesome'; |
||||
import { colors } from '../../styles/variables'; |
||||
|
||||
export default class App extends Component { |
||||
state = { |
||||
canGoBack: false, |
||||
canGoForward: false, |
||||
inputValue: this.props.defaultUrl, |
||||
url: this.props.defaultUrl |
||||
}; |
||||
|
||||
render() { |
||||
const { |
||||
canGoBack, |
||||
canGoForward, |
||||
inputValue, |
||||
url |
||||
} = this.state; |
||||
|
||||
return ( |
||||
<View style={{ flex: 1 }}> |
||||
<View style={styles.urlBar}> |
||||
<Icon |
||||
disabled={true} |
||||
name="angle-left" |
||||
onPress={() => { this.webview.goBack(); }} |
||||
size={30} |
||||
style={{...styles.icon, ...(!canGoBack ? styles.disabledIcon : {})}} |
||||
/> |
||||
<Icon |
||||
disabled={!canGoForward} |
||||
name="angle-right" |
||||
onPress={() => { this.webview.goForward(); }} |
||||
size={30} |
||||
style={{...styles.icon, ...(!canGoForward ? styles.disabledIcon : {})}} |
||||
/> |
||||
<TextInput |
||||
autoCapitalize="none" |
||||
autoCorrect={false} |
||||
clearButtonMode="while-editing" |
||||
keyboardType="url" |
||||
onChangeText={(inputValue) => { this.setState({ inputValue }); }} |
||||
onSubmitEditing={() => { this.setState({ url: this.state.inputValue }) }} |
||||
placeholder="Enter website address" |
||||
placeholderTextColor={colors.asphalt} |
||||
returnKeyType="go" |
||||
style={styles.urlInput} |
||||
value={inputValue} |
||||
/> |
||||
<Icon |
||||
disabled={!canGoForward} |
||||
name="refresh" |
||||
onPress={() => { this.webview.reload(); }} |
||||
size={20} |
||||
style={styles.icon} |
||||
/> |
||||
</View> |
||||
<WebView |
||||
onNavigationStateChange={({ canGoBack, canGoForward, url }) => { |
||||
this.setState({ canGoBack, canGoForward, inputValue: url }); |
||||
}} |
||||
ref={(ref) => { this.webview = ref; }} |
||||
source={{ uri: url }} |
||||
style={{ width: Dimensions.get('window').width }} |
||||
/> |
||||
</View> |
||||
); |
||||
} |
||||
} |
||||
|
||||
const styles = StyleSheet.create({ |
||||
urlBar: { |
||||
alignItems: 'stretch', |
||||
backgroundColor: colors.concrete, |
||||
flexDirection: 'row', |
||||
paddingVertical: 8 |
||||
}, |
||||
icon: { |
||||
color: colors.tar, |
||||
flex: 0, |
||||
height: 28, |
||||
lineHeight: 28, |
||||
paddingTop: 2, |
||||
textAlign: 'center', |
||||
width: 36, |
||||
}, |
||||
disabledIcon: { |
||||
color: colors.ash |
||||
}, |
||||
urlInput: { |
||||
backgroundColor: colors.slate, |
||||
borderRadius: 3, |
||||
flex: 1, |
||||
fontSize: 14, |
||||
padding: 8 |
||||
} |
||||
}); |
@ -0,0 +1,13 @@ |
||||
import React, { Component } from 'react'; |
||||
import Browser from '../Browser'; |
||||
import Screen from '../Screen'; |
||||
|
||||
export default class BrowserView extends Component { |
||||
render() { |
||||
return ( |
||||
<Screen> |
||||
<Browser defaultUrl="http://metamask.io" /> |
||||
</Screen> |
||||
); |
||||
} |
||||
} |
@ -0,0 +1,36 @@ |
||||
import React from 'react'; |
||||
import { |
||||
Dimensions, |
||||
SafeAreaView, |
||||
StatusBar, |
||||
StyleSheet, |
||||
View |
||||
} from 'react-native'; |
||||
import { colors, common } from '../../styles/variables'; |
||||
|
||||
export default function({ children }) { |
||||
const { height, width } = Dimensions.get('window'); |
||||
|
||||
return ( |
||||
<View style={common.flexGrow}> |
||||
<View style={{...styles.statusBarUnderlay, ...{ width, height }}}> |
||||
<StatusBar |
||||
backgroundColor={colors.tar} |
||||
barStyle="light-content" |
||||
/> |
||||
</View> |
||||
<SafeAreaView style={common.flexGrow}> |
||||
{children} |
||||
</SafeAreaView> |
||||
</View> |
||||
); |
||||
} |
||||
|
||||
const styles = StyleSheet.create({ |
||||
statusBarUnderlay: { |
||||
backgroundColor: colors.tar, |
||||
left: 0, |
||||
position: 'absolute', |
||||
top: 0 |
||||
} |
||||
}); |
@ -0,0 +1,16 @@ |
||||
export const colors = { |
||||
ash: '#ced6e0', |
||||
asphalt: '#747d8c', |
||||
concrete: '#f1f2f6', |
||||
slate: '#dfe4ea', |
||||
tar: '#2f3542' |
||||
}; |
||||
|
||||
export const common = { |
||||
flexGrow: { |
||||
flex: 1 |
||||
}, |
||||
flexStatic: { |
||||
flex: 0 |
||||
} |
||||
}; |
@ -0,0 +1,5 @@ |
||||
import App from './App'; |
||||
import { AppRegistry } from 'react-native'; |
||||
import { name } from './app.json'; |
||||
|
||||
AppRegistry.registerComponent(name, () => App); |
@ -0,0 +1,54 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>en</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>APPL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
<key>LSRequiresIPhoneOS</key> |
||||
<true/> |
||||
<key>UILaunchStoryboardName</key> |
||||
<string>LaunchScreen</string> |
||||
<key>UIRequiredDeviceCapabilities</key> |
||||
<array> |
||||
<string>armv7</string> |
||||
</array> |
||||
<key>UISupportedInterfaceOrientations</key> |
||||
<array> |
||||
<string>UIInterfaceOrientationPortrait</string> |
||||
<string>UIInterfaceOrientationLandscapeLeft</string> |
||||
<string>UIInterfaceOrientationLandscapeRight</string> |
||||
</array> |
||||
<key>UIViewControllerBasedStatusBarAppearance</key> |
||||
<false/> |
||||
<key>NSLocationWhenInUseUsageDescription</key> |
||||
<string></string> |
||||
<key>NSAppTransportSecurity</key> |
||||
<!--See http://ste.vn/2015/06/10/configuring-app-transport-security-ios-9-osx-10-11/ --> |
||||
<dict> |
||||
<key>NSExceptionDomains</key> |
||||
<dict> |
||||
<key>localhost</key> |
||||
<dict> |
||||
<key>NSExceptionAllowsInsecureHTTPLoads</key> |
||||
<true/> |
||||
</dict> |
||||
</dict> |
||||
</dict> |
||||
</dict> |
||||
</plist> |
@ -0,0 +1,24 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>en</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>$(EXECUTABLE_NAME)</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>$(PRODUCT_NAME)</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>BNDL</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1</string> |
||||
</dict> |
||||
</plist> |
@ -0,0 +1,129 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0820" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "NO" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "YES" |
||||
buildForArchiving = "YES" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D2A28121D9B038B00D4039D" |
||||
BuildableName = "libReact.a" |
||||
BlueprintName = "React-tvOS" |
||||
ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "YES" |
||||
buildForArchiving = "YES" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E47A1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOS.app" |
||||
BlueprintName = "MetaMask-tvOS" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "NO" |
||||
buildForArchiving = "NO" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E48F1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOSTests.xctest" |
||||
BlueprintName = "MetaMask-tvOSTests" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<Testables> |
||||
<TestableReference |
||||
skipped = "NO"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E48F1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOSTests.xctest" |
||||
BlueprintName = "MetaMask-tvOSTests" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</TestableReference> |
||||
</Testables> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E47A1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOS.app" |
||||
BlueprintName = "MetaMask-tvOS" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<BuildableProductRunnable |
||||
runnableDebuggingMode = "0"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E47A1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOS.app" |
||||
BlueprintName = "MetaMask-tvOS" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildableProductRunnable> |
||||
<AdditionalOptions> |
||||
</AdditionalOptions> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Release" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<BuildableProductRunnable |
||||
runnableDebuggingMode = "0"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "2D02E47A1E0B4A5D006451C7" |
||||
BuildableName = "MetaMask-tvOS.app" |
||||
BlueprintName = "MetaMask-tvOS" |
||||
ReferencedContainer = "container:MetaMask.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildableProductRunnable> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -0,0 +1,129 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "0620" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "NO" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "YES" |
||||
buildForArchiving = "YES" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "83CBBA2D1A601D0E00E9B192" |
||||
BuildableName = "libReact.a" |
||||
BlueprintName = "React" |
||||
ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||