├── .watchmanconfig ├── .gitattributes ├── .eslintignore ├── src ├── @types │ └── index.d.ts ├── images │ ├── 01.png │ ├── 02.png │ ├── 03.png │ ├── 04.png │ ├── 05.png │ ├── 06.png │ ├── 07.png │ ├── 08.png │ ├── 09.png │ ├── 10.png │ ├── 11.png │ ├── 12.png │ ├── 13.png │ ├── 01@2x.png │ ├── 01@3x.png │ ├── 02@2x.png │ ├── 02@3x.png │ ├── 03@2x.png │ ├── 03@3x.png │ ├── 04@2x.png │ ├── 04@3x.png │ ├── 05@2x.png │ ├── 05@3x.png │ ├── 06@2x.png │ ├── 06@3x.png │ ├── 07@2x.png │ ├── 07@3x.png │ ├── 08@2x.png │ ├── 08@3x.png │ ├── 09@2x.png │ ├── 09@3x.png │ ├── 10@2x.png │ ├── 10@3x.png │ ├── 11@2x.png │ ├── 11@3x.png │ ├── 12@2x.png │ ├── 12@3x.png │ ├── 13@2x.png │ ├── 13@3x.png │ ├── avatar.png │ ├── avatar@2x.png │ ├── avatar@3x.png │ ├── credit-card.png │ ├── credit-card@2x.png │ └── credit-card@3x.png ├── pages │ ├── Pay │ │ └── index.tsx │ ├── Home │ │ ├── styles.ts │ │ └── index.tsx │ └── Wallet │ │ ├── styles.ts │ │ └── index.tsx ├── App.tsx ├── components │ ├── PayButton │ │ ├── styles.ts │ │ └── index.tsx │ ├── Banner │ │ ├── index.tsx │ │ └── styles.ts │ ├── Tips │ │ ├── styles.ts │ │ └── index.tsx │ ├── Suggestions │ │ ├── styles.ts │ │ └── index.tsx │ └── Activities │ │ ├── index.tsx │ │ └── styles.ts └── routes.tsx ├── app.json ├── .github ├── home.png ├── wallet.png ├── picpay-logo.png ├── funcionamento.gif ├── dependabot.yml └── workflows │ └── codeql-analysis.yml ├── babel.config.js ├── android ├── app │ ├── debug.keystore │ ├── src │ │ ├── main │ │ │ ├── res │ │ │ │ ├── values │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ └── mipmap-xxxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── picpay │ │ │ │ │ ├── MainActivity.java │ │ │ │ │ └── MainApplication.java │ │ │ └── AndroidManifest.xml │ │ └── debug │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ └── com │ │ │ └── picpay │ │ │ └── ReactNativeFlipper.java │ ├── proguard-rules.pro │ ├── build_defs.bzl │ ├── _BUCK │ └── build.gradle ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── settings.gradle ├── build.gradle ├── gradle.properties ├── gradlew.bat └── gradlew ├── ios ├── Picpay │ ├── Images.xcassets │ │ ├── Contents.json │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── AppDelegate.h │ ├── main.m │ ├── Info.plist │ ├── AppDelegate.m │ └── LaunchScreen.storyboard ├── Picpay.xcworkspace │ └── contents.xcworkspacedata ├── Podfile ├── PicpayTests │ ├── Info.plist │ └── PicpayTests.m ├── Picpay-tvOSTests │ └── Info.plist ├── Picpay-tvOS │ └── Info.plist ├── Picpay.xcodeproj │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Picpay.xcscheme │ │ │ └── Picpay-tvOS.xcscheme │ └── project.pbxproj └── Podfile.lock ├── prettier.config.js ├── .buckconfig ├── .editorconfig ├── index.js ├── __tests__ └── App-test.tsx ├── metro.config.js ├── .gitignore ├── LICENSE ├── .eslintrc.json ├── package.json ├── README.md └── tsconfig.json /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | **/*.js 2 | node_modules 3 | build 4 | -------------------------------------------------------------------------------- /src/@types/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.png'; 2 | -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Picpay", 3 | "displayName": "Picpay" 4 | } -------------------------------------------------------------------------------- /.github/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/.github/home.png -------------------------------------------------------------------------------- /.github/wallet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/.github/wallet.png -------------------------------------------------------------------------------- /src/images/01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/01.png -------------------------------------------------------------------------------- /src/images/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/02.png -------------------------------------------------------------------------------- /src/images/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/03.png -------------------------------------------------------------------------------- /src/images/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/04.png -------------------------------------------------------------------------------- /src/images/05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/05.png -------------------------------------------------------------------------------- /src/images/06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/06.png -------------------------------------------------------------------------------- /src/images/07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/07.png -------------------------------------------------------------------------------- /src/images/08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/08.png -------------------------------------------------------------------------------- /src/images/09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/09.png -------------------------------------------------------------------------------- /src/images/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/10.png -------------------------------------------------------------------------------- /src/images/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/11.png -------------------------------------------------------------------------------- /src/images/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/12.png -------------------------------------------------------------------------------- /src/images/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/13.png -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ['module:metro-react-native-babel-preset'], 3 | }; 4 | -------------------------------------------------------------------------------- /src/images/01@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/01@2x.png -------------------------------------------------------------------------------- /src/images/01@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/01@3x.png -------------------------------------------------------------------------------- /src/images/02@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/02@2x.png -------------------------------------------------------------------------------- /src/images/02@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/02@3x.png -------------------------------------------------------------------------------- /src/images/03@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/03@2x.png -------------------------------------------------------------------------------- /src/images/03@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/03@3x.png -------------------------------------------------------------------------------- /src/images/04@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/04@2x.png -------------------------------------------------------------------------------- /src/images/04@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/04@3x.png -------------------------------------------------------------------------------- /src/images/05@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/05@2x.png -------------------------------------------------------------------------------- /src/images/05@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/05@3x.png -------------------------------------------------------------------------------- /src/images/06@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/06@2x.png -------------------------------------------------------------------------------- /src/images/06@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/06@3x.png -------------------------------------------------------------------------------- /src/images/07@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/07@2x.png -------------------------------------------------------------------------------- /src/images/07@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/07@3x.png -------------------------------------------------------------------------------- /src/images/08@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/08@2x.png -------------------------------------------------------------------------------- /src/images/08@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/08@3x.png -------------------------------------------------------------------------------- /src/images/09@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/09@2x.png -------------------------------------------------------------------------------- /src/images/09@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/09@3x.png -------------------------------------------------------------------------------- /src/images/10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/10@2x.png -------------------------------------------------------------------------------- /src/images/10@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/10@3x.png -------------------------------------------------------------------------------- /src/images/11@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/11@2x.png -------------------------------------------------------------------------------- /src/images/11@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/11@3x.png -------------------------------------------------------------------------------- /src/images/12@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/12@2x.png -------------------------------------------------------------------------------- /src/images/12@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/12@3x.png -------------------------------------------------------------------------------- /src/images/13@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/13@2x.png -------------------------------------------------------------------------------- /src/images/13@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/13@3x.png -------------------------------------------------------------------------------- /src/images/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/avatar.png -------------------------------------------------------------------------------- /.github/picpay-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/.github/picpay-logo.png -------------------------------------------------------------------------------- /.github/funcionamento.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/.github/funcionamento.gif -------------------------------------------------------------------------------- /android/app/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/debug.keystore -------------------------------------------------------------------------------- /src/images/avatar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/avatar@2x.png -------------------------------------------------------------------------------- /src/images/avatar@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/avatar@3x.png -------------------------------------------------------------------------------- /src/images/credit-card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/credit-card.png -------------------------------------------------------------------------------- /android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Picpay 3 | 4 | -------------------------------------------------------------------------------- /ios/Picpay/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/images/credit-card@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/credit-card@2x.png -------------------------------------------------------------------------------- /src/images/credit-card@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/src/images/credit-card@3x.png -------------------------------------------------------------------------------- /prettier.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | singleQuote: true, 3 | trailingComma: 'all', 4 | arrowParens: 'avoid', 5 | } 6 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | insert_final_newline = true 9 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviseares/picpay-react-native/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: npm 4 | directory: "/" 5 | schedule: 6 | interval: monthly 7 | time: "08:00" 8 | open-pull-requests-limit: 10 9 | -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'Picpay' 2 | apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) 3 | include ':app' 4 | -------------------------------------------------------------------------------- /ios/Picpay/AppDelegate.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | @interface AppDelegate : UIResponder 5 | 6 | @property (nonatomic, strong) UIWindow *window; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /src/pages/Pay/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { View } from 'react-native'; 3 | 4 | // import { Container } from './styles'; 5 | 6 | const Pay: React.FC = () => { 7 | return ; 8 | }; 9 | 10 | export default Pay; 11 | -------------------------------------------------------------------------------- /ios/Picpay/main.m: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "AppDelegate.h" 4 | 5 | int main(int argc, char * argv[]) { 6 | @autoreleasepool { 7 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.2-all.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | import 'react-native-gesture-handler'; 5 | import {AppRegistry} from 'react-native'; 6 | import App from './src/App'; 7 | import {name as appName} from './app.json'; 8 | 9 | AppRegistry.registerComponent(appName, () => App); 10 | -------------------------------------------------------------------------------- /ios/Picpay.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /__tests__/App-test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import 'react-native'; 6 | import React from 'react'; 7 | import renderer from 'react-test-renderer'; 8 | import App from '../src/App'; 9 | 10 | // Note: test renderer must be required after react-native. 11 | 12 | it('renders correctly', () => { 13 | renderer.create(); 14 | }); 15 | -------------------------------------------------------------------------------- /metro.config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Metro configuration for React Native 3 | * https://github.com/facebook/react-native 4 | * 5 | * @format 6 | */ 7 | 8 | module.exports = { 9 | transformer: { 10 | getTransformOptions: async () => ({ 11 | transform: { 12 | experimentalImportSupport: false, 13 | inlineRequires: false, 14 | }, 15 | }), 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/App.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { StatusBar } from 'react-native'; 3 | import { NavigationContainer } from '@react-navigation/native'; 4 | import Routes from './routes'; 5 | 6 | const App: React.FC = () => ( 7 | <> 8 | 9 | 10 | 11 | 12 | 13 | ); 14 | 15 | export default App; 16 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/picpay/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.picpay; 2 | 3 | import com.facebook.react.ReactActivity; 4 | 5 | public class MainActivity extends ReactActivity { 6 | 7 | /** 8 | * Returns the name of the main component registered from JavaScript. This is used to schedule 9 | * rendering of the component. 10 | */ 11 | @Override 12 | protected String getMainComponentName() { 13 | return "Picpay"; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /src/components/PayButton/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | import LinearGradient from 'react-native-linear-gradient'; 3 | 4 | interface Props { 5 | focused: boolean; 6 | } 7 | 8 | export const Linear = styled(LinearGradient)` 9 | width: 60px; 10 | height: 60px; 11 | border-radius: 30px; 12 | justify-content: center; 13 | align-items: center; 14 | `; 15 | 16 | export const Label = styled.Text` 17 | color: ${({ focused }) => (focused ? '#222' : '#fff')}; 18 | font-size: 12px; 19 | `; 20 | -------------------------------------------------------------------------------- /src/components/Banner/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import img13 from '../../images/13.png'; 4 | 5 | import { Container, Details, Img, Title, Description } from './styles'; 6 | 7 | const Banner: React.FC = () => { 8 | return ( 9 | 10 |
11 | Cobre um amigo 12 | 13 | Mantenha suas parcerias em dia,use o PicPay fara fazer suas cobranças 14 | 15 |
16 | 17 |
18 | ); 19 | }; 20 | 21 | export default Banner; 22 | -------------------------------------------------------------------------------- /android/app/build_defs.bzl: -------------------------------------------------------------------------------- 1 | """Helper definitions to glob .aar and .jar targets""" 2 | 3 | def create_aar_targets(aarfiles): 4 | for aarfile in aarfiles: 5 | name = "aars__" + aarfile[aarfile.rindex("/") + 1:aarfile.rindex(".aar")] 6 | lib_deps.append(":" + name) 7 | android_prebuilt_aar( 8 | name = name, 9 | aar = aarfile, 10 | ) 11 | 12 | def create_jar_targets(jarfiles): 13 | for jarfile in jarfiles: 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 | -------------------------------------------------------------------------------- /ios/Podfile: -------------------------------------------------------------------------------- 1 | require_relative '../node_modules/react-native/scripts/react_native_pods' 2 | require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' 3 | 4 | platform :ios, '10.0' 5 | 6 | target 'Picpay' do 7 | config = use_native_modules! 8 | 9 | use_react_native!(:path => config["reactNativePath"]) 10 | 11 | target 'PicpayTests' do 12 | inherit! :complete 13 | # Pods for testing 14 | end 15 | 16 | # Enables Flipper. 17 | # 18 | # Note that if you have use_frameworks! enabled, Flipper will not work and 19 | # you should disable these next few lines. 20 | use_flipper! 21 | post_install do |installer| 22 | flipper_post_install(installer) 23 | end 24 | end 25 | -------------------------------------------------------------------------------- /src/components/Banner/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | import { Platform } from 'react-native'; 3 | 4 | export const Container = styled.View` 5 | background: #6882bb; 6 | margin: 25px 16px; 7 | height: 150px; 8 | border-radius: 8px; 9 | flex-direction: row; 10 | align-items: center; 11 | padding: 15px; 12 | `; 13 | 14 | export const Details = styled.View` 15 | flex: 1; 16 | `; 17 | export const Img = styled.Image``; 18 | 19 | export const Title = styled.Text` 20 | color: #fff; 21 | font-size: 16px; 22 | font-weight: ${Platform.OS === 'ios' ? '800' : 'bold'}; 23 | `; 24 | 25 | export const Description = styled.Text` 26 | color: #fff; 27 | font-size: 14px; 28 | margin-top: 15px; 29 | `; 30 | -------------------------------------------------------------------------------- /src/pages/Home/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | 3 | export const Wrapper = styled.SafeAreaView` 4 | background: #000; 5 | flex: 1; 6 | `; 7 | 8 | export const Container = styled.ScrollView``; 9 | 10 | export const Header = styled.View` 11 | height: 50px; 12 | padding: 0 16px; 13 | flex-direction: row; 14 | align-items: center; 15 | justify-content: space-between; 16 | `; 17 | 18 | export const BalanceContainer = styled.View``; 19 | 20 | export const BalanceTitle = styled.Text` 21 | color: #fff; 22 | font-size: 14px; 23 | text-align: center; 24 | `; 25 | 26 | export const Balance = styled.Text` 27 | color: #fff; 28 | font-size: 20px; 29 | text-align: center; 30 | font-weight: bold; 31 | `; 32 | -------------------------------------------------------------------------------- /ios/Picpay/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 | } 39 | -------------------------------------------------------------------------------- /ios/PicpayTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 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/Picpay-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 | -------------------------------------------------------------------------------- /src/components/Tips/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | import { Platform } from 'react-native'; 3 | 4 | interface Props { 5 | bgColor: string; 6 | } 7 | 8 | export const Container = styled.ScrollView.attrs(() => ({ 9 | horizontal: true, 10 | showsHorizontalScrollIndicator: false, 11 | contentContainerStyle: { 12 | // alignItems: 'center', 13 | paddingLeft: 16, 14 | }, 15 | }))` 16 | margin-top: 25px; 17 | `; 18 | 19 | export const Option = styled.TouchableOpacity` 20 | background: ${({ bgColor }) => bgColor}; 21 | width: 160px; 22 | height: 200px; 23 | border-radius: 8px; 24 | padding: 15px; 25 | margin-right: 10px; 26 | justify-content: space-between; 27 | `; 28 | export const Title = styled.Text` 29 | color: #fff; 30 | font-size: 16px; 31 | font-weight: ${Platform.OS === 'ios' ? '800' : 'bold'}; 32 | text-align: left; 33 | `; 34 | export const Img = styled.Image` 35 | align-self: center; 36 | `; 37 | -------------------------------------------------------------------------------- /src/components/PayButton/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import MaterialIcons from 'react-native-vector-icons/MaterialIcons'; 3 | import { useNavigation } from '@react-navigation/native'; 4 | import { TouchableWithoutFeedback } from 'react-native'; 5 | import { Linear, Label } from './styles'; 6 | 7 | interface ButtonProps { 8 | focused: boolean; 9 | } 10 | 11 | const PayButton: React.FC = ({ focused }) => { 12 | const navigation = useNavigation(); 13 | 14 | return ( 15 | navigation.navigate('Pay')}> 16 | 20 | 25 | 26 | 27 | 28 | ); 29 | }; 30 | 31 | export default PayButton; 32 | -------------------------------------------------------------------------------- /.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 | 24 | # Android/IntelliJ 25 | # 26 | build/ 27 | .idea 28 | .gradle 29 | local.properties 30 | *.iml 31 | 32 | # Visual Studio Code 33 | # 34 | .vscode/ 35 | 36 | # node.js 37 | # 38 | node_modules/ 39 | npm-debug.log 40 | yarn-error.log 41 | 42 | # BUCK 43 | buck-out/ 44 | \.buckd/ 45 | *.keystore 46 | !debug.keystore 47 | 48 | # fastlane 49 | # 50 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 51 | # screenshots whenever they are needed. 52 | # For more information about the recommended setup visit: 53 | # https://docs.fastlane.tools/best-practices/source-control/ 54 | 55 | */fastlane/report.xml 56 | */fastlane/Preview.html 57 | */fastlane/screenshots 58 | 59 | # Bundle artifact 60 | *.jsbundle 61 | 62 | # CocoaPods 63 | /ios/Pods/ 64 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Davi Borges Seares 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 13 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | ext { 5 | buildToolsVersion = "29.0.2" 6 | minSdkVersion = 16 7 | compileSdkVersion = 29 8 | targetSdkVersion = 29 9 | } 10 | repositories { 11 | google() 12 | jcenter() 13 | } 14 | dependencies { 15 | classpath("com.android.tools.build:gradle:3.5.3") 16 | // NOTE: Do not place your application dependencies here; they belong 17 | // in the individual module build.gradle files 18 | } 19 | } 20 | 21 | allprojects { 22 | repositories { 23 | mavenLocal() 24 | maven { 25 | // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm 26 | url("$rootDir/../node_modules/react-native/android") 27 | } 28 | maven { 29 | // Android JSC is installed from npm 30 | url("$rootDir/../node_modules/jsc-android/dist") 31 | } 32 | 33 | google() 34 | jcenter() 35 | maven { url 'https://www.jitpack.io' } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/pages/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons'; 3 | import Octicons from 'react-native-vector-icons/Octicons'; 4 | 5 | import Activities from '../../components/Activities'; 6 | import Suggestions from '../../components/Suggestions'; 7 | import Tips from '../../components/Tips'; 8 | import Banner from '../../components/Banner'; 9 | 10 | import { 11 | Container, 12 | Header, 13 | BalanceContainer, 14 | BalanceTitle, 15 | Balance, 16 | Wrapper, 17 | } from './styles'; 18 | 19 | const Home: React.FC = () => ( 20 | 21 | 22 |
23 | 24 | 25 | 26 | Meu Saldo 27 | R$ 160.138,20 28 | 29 | 30 | 31 |
32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
41 |
42 | ); 43 | 44 | export default Home; 45 | -------------------------------------------------------------------------------- /src/components/Suggestions/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | 3 | export const Wrapper = styled.View` 4 | background-color: #1e222b; 5 | `; 6 | 7 | export const Container = styled.ScrollView.attrs(() => ({ 8 | horizontal: true, 9 | showsHorizontalScrollIndicator: false, 10 | contentContainerStyle: { 11 | alignItems: 'center', 12 | paddingLeft: 16, 13 | }, 14 | }))` 15 | background-color: #1e222b; 16 | height: 130px; 17 | `; 18 | 19 | export const Option = styled.TouchableOpacity` 20 | width: 80px; 21 | margin-right: 16px; 22 | align-items: center; 23 | `; 24 | 25 | export const Img = styled.Image``; 26 | 27 | export const LabelContainer = styled.View` 28 | height: 40px; 29 | margin-top: 8px; 30 | justify-content: center; 31 | `; 32 | 33 | export const Label = styled.Text` 34 | color: #fff; 35 | font-weight: bold; 36 | font-size: 14px; 37 | text-align: center; 38 | `; 39 | 40 | export const TabContainer = styled.View` 41 | flex-direction: row; 42 | justify-content: space-between; 43 | width: 190px; 44 | padding: 10px; 45 | `; 46 | 47 | export const TabActive = styled.View` 48 | border-bottom-color: #fff; 49 | border-bottom-width: 2px; 50 | `; 51 | 52 | export const TabLabel = styled.Text` 53 | color: #fff; 54 | font-size: 16px; 55 | font-weight: bold; 56 | `; 57 | -------------------------------------------------------------------------------- /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 | # AndroidX package structure to make it clearer which packages are bundled with the 21 | # Android operating system, and which are packaged with your app's APK 22 | # https://developer.android.com/topic/libraries/support-library/androidx-rn 23 | android.useAndroidX=true 24 | # Automatically convert third-party libraries to use AndroidX 25 | android.enableJetifier=true 26 | 27 | # Version of flipper SDK to use with React Native 28 | FLIPPER_VERSION=0.37.0 29 | -------------------------------------------------------------------------------- /src/components/Tips/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | import { Container, Option, Title, Img } from './styles'; 4 | 5 | import img8 from '../../images/08.png'; 6 | import img10 from '../../images/10.png'; 7 | import img11 from '../../images/11.png'; 8 | import img12 from '../../images/12.png'; 9 | 10 | interface Item { 11 | key: string; 12 | img: number; 13 | label: string; 14 | bgColor: string; 15 | } 16 | 17 | const items: Item[] = [ 18 | { 19 | key: String(Math.random()), 20 | img: img12, 21 | label: 'Adicione dinheiro no picpay', 22 | bgColor: '#ba2776', 23 | }, 24 | { 25 | key: String(Math.random()), 26 | img: img8, 27 | label: 'Pague suas contas sem sair de casa', 28 | bgColor: '#142c4a', 29 | }, 30 | { 31 | key: String(Math.random()), 32 | img: img10, 33 | label: 'Pague um amigo à distância', 34 | bgColor: '#4139c8', 35 | }, 36 | { 37 | key: String(Math.random()), 38 | img: img11, 39 | label: 'Saiba como pagar boleto', 40 | bgColor: '#00ab4b', 41 | }, 42 | ]; 43 | 44 | const Tips: React.FC = () => { 45 | return ( 46 | 47 | {items.map(item => ( 48 | 52 | ))} 53 | 54 | ); 55 | }; 56 | 57 | export default Tips; 58 | -------------------------------------------------------------------------------- /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 | load(":build_defs.bzl", "create_aar_targets", "create_jar_targets") 12 | 13 | lib_deps = [] 14 | 15 | create_aar_targets(glob(["libs/*.aar"])) 16 | 17 | create_jar_targets(glob(["libs/*.jar"])) 18 | 19 | android_library( 20 | name = "all-libs", 21 | exported_deps = lib_deps, 22 | ) 23 | 24 | android_library( 25 | name = "app-code", 26 | srcs = glob([ 27 | "src/main/java/**/*.java", 28 | ]), 29 | deps = [ 30 | ":all-libs", 31 | ":build_config", 32 | ":res", 33 | ], 34 | ) 35 | 36 | android_build_config( 37 | name = "build_config", 38 | package = "com.picpay", 39 | ) 40 | 41 | android_resource( 42 | name = "res", 43 | package = "com.picpay", 44 | res = "src/main/res", 45 | ) 46 | 47 | android_binary( 48 | name = "app", 49 | keystore = "//android/keystores:debug", 50 | manifest = "src/main/AndroidManifest.xml", 51 | package_type = "debug", 52 | deps = [ 53 | ":app-code", 54 | ], 55 | ) 56 | -------------------------------------------------------------------------------- /ios/Picpay-tvOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 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 | NSAppTransportSecurity 26 | 27 | NSExceptionDomains 28 | 29 | localhost 30 | 31 | NSExceptionAllowsInsecureHTTPLoads 32 | 33 | 34 | 35 | 36 | NSLocationWhenInUseUsageDescription 37 | 38 | UILaunchStoryboardName 39 | LaunchScreen 40 | UIRequiredDeviceCapabilities 41 | 42 | armv7 43 | 44 | UISupportedInterfaceOrientations 45 | 46 | UIInterfaceOrientationPortrait 47 | UIInterfaceOrientationLandscapeLeft 48 | UIInterfaceOrientationLandscapeRight 49 | 50 | UIViewControllerBasedStatusBarAppearance 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "es6": true 5 | }, 6 | "extends": [ 7 | "plugin:react/recommended", 8 | "airbnb", 9 | "plugin:prettier/recommended", 10 | "plugin:@typescript-eslint/eslint-recommended", 11 | "plugin:@typescript-eslint/recommended" 12 | ], 13 | "globals": { 14 | "Atomics": "readonly", 15 | "SharedArrayBuffer": "readonly" 16 | }, 17 | "parser": "@typescript-eslint/parser", 18 | "parserOptions": { 19 | "ecmaFeatures": { 20 | "jsx": true 21 | }, 22 | "ecmaVersion": 2018, 23 | "sourceType": "module", 24 | "project": "./tsconfig.json" 25 | }, 26 | "plugins": [ 27 | "react", 28 | "react-hooks", 29 | "@typescript-eslint", 30 | "prettier" 31 | ], 32 | "rules": { 33 | "prettier/prettier": "error", 34 | "react-hooks/rules-of-hooks": "error", 35 | "react-hooks/exhaustive-deps": "warn", 36 | "react/jsx-filename-extension": [ 37 | 1, 38 | { 39 | "extensions": [ 40 | ".tsx" 41 | ] 42 | } 43 | ], 44 | "import/prefer-default-export": "off", 45 | "react/prop-types": "off", 46 | "no-unused-expressions": "off", 47 | "react/jsx-props-no-spreading": "off", 48 | "@typescript-eslint/camelcase": "off", 49 | "react/jsx-one-expression-per-line": "off", 50 | "@typescript-eslint/explicit-function-return-type": [ 51 | "error", 52 | { 53 | "allowExpressions": true 54 | } 55 | ], 56 | "import/extensions": [ 57 | "error", 58 | "ignorePackages", 59 | { 60 | "ts": "never", 61 | "tsx": "never" 62 | } 63 | ] 64 | }, 65 | "settings": { 66 | "import/resolver": { 67 | "typescript": {} 68 | } 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /ios/PicpayTests/PicpayTests.m: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | #import 5 | #import 6 | 7 | #define TIMEOUT_SECONDS 600 8 | #define TEXT_TO_LOOK_FOR @"Welcome to React" 9 | 10 | @interface PicpayTests : XCTestCase 11 | 12 | @end 13 | 14 | @implementation PicpayTests 15 | 16 | - (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test 17 | { 18 | if (test(view)) { 19 | return YES; 20 | } 21 | for (UIView *subview in [view subviews]) { 22 | if ([self findSubviewInView:subview matching:test]) { 23 | return YES; 24 | } 25 | } 26 | return NO; 27 | } 28 | 29 | - (void)testRendersWelcomeScreen 30 | { 31 | UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController]; 32 | NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; 33 | BOOL foundElement = NO; 34 | 35 | __block NSString *redboxError = nil; 36 | #ifdef DEBUG 37 | RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { 38 | if (level >= RCTLogLevelError) { 39 | redboxError = message; 40 | } 41 | }); 42 | #endif 43 | 44 | while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { 45 | [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 46 | [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 47 | 48 | foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { 49 | if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { 50 | return YES; 51 | } 52 | return NO; 53 | }]; 54 | } 55 | 56 | #ifdef DEBUG 57 | RCTSetLogFunction(RCTDefaultLogFunction); 58 | #endif 59 | 60 | XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); 61 | XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); 62 | } 63 | 64 | 65 | @end 66 | -------------------------------------------------------------------------------- /src/components/Suggestions/index.tsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react'; 2 | 3 | import { 4 | Container, 5 | Option, 6 | Img, 7 | Label, 8 | LabelContainer, 9 | TabContainer, 10 | TabActive, 11 | TabLabel, 12 | Wrapper, 13 | } from './styles'; 14 | 15 | import img1 from '../../images/01.png'; 16 | import img2 from '../../images/02.png'; 17 | import img3 from '../../images/03.png'; 18 | import img4 from '../../images/04.png'; 19 | import img5 from '../../images/05.png'; 20 | import img6 from '../../images/06.png'; 21 | import img7 from '../../images/07.png'; 22 | 23 | interface Item { 24 | key: string; 25 | img: number; 26 | label: string; 27 | } 28 | 29 | const items: Item[] = [ 30 | { 31 | key: String(Math.random()), 32 | img: img5, 33 | label: 'Central de Doações', 34 | }, 35 | { 36 | key: String(Math.random()), 37 | img: img1, 38 | label: 'Recarga', 39 | }, 40 | { 41 | key: String(Math.random()), 42 | img: img6, 43 | label: 'Pagar Contas', 44 | }, 45 | { 46 | key: String(Math.random()), 47 | img: img7, 48 | label: 'Cobrar', 49 | }, 50 | { 51 | key: String(Math.random()), 52 | img: img4, 53 | label: 'Sky', 54 | }, 55 | { 56 | key: String(Math.random()), 57 | img: img2, 58 | label: 'Uber', 59 | }, 60 | { 61 | key: String(Math.random()), 62 | img: img3, 63 | label: 'Passagens', 64 | }, 65 | ]; 66 | 67 | const Suggestions: React.FC = () => { 68 | return ( 69 | 70 | 71 | 72 | Sugestões 73 | 74 | Favoritos 75 | 76 | 77 | {items.map(item => ( 78 | 84 | ))} 85 | 86 | 87 | ); 88 | }; 89 | export default Suggestions; 90 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Picpay", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "android": "react-native run-android", 7 | "ios": "react-native run-ios", 8 | "start": "react-native start", 9 | "test": "jest", 10 | "lint": "eslint . --ext .js,.jsx,.ts,.tsx" 11 | }, 12 | "dependencies": { 13 | "@react-native-community/masked-view": "^0.1.10", 14 | "@react-navigation/bottom-tabs": "^5.7.0", 15 | "@react-navigation/native": "^5.7.0", 16 | "react": "16.13.1", 17 | "react-native": "0.63.0", 18 | "react-native-gesture-handler": "^1.6.1", 19 | "react-native-linear-gradient": "^2.5.6", 20 | "react-native-reanimated": "^1.9.0", 21 | "react-native-safe-area-context": "^3.1.1", 22 | "react-native-screens": "^2.9.0", 23 | "react-native-vector-icons": "^7.0.0", 24 | "styled-components": "^5.1.1" 25 | }, 26 | "devDependencies": { 27 | "@babel/core": "^7.8.4", 28 | "@babel/runtime": "^7.8.4", 29 | "@react-native-community/eslint-config": "^1.1.0", 30 | "@types/jest": "^25.2.3", 31 | "@types/react-native": "^0.62.0", 32 | "@types/react-native-vector-icons": "^6.4.5", 33 | "@types/react-test-renderer": "^16.9.2", 34 | "@types/styled-components": "^5.1.1", 35 | "@typescript-eslint/eslint-plugin": "^3.6.0", 36 | "@typescript-eslint/parser": "^3.6.0", 37 | "babel-jest": "^25.1.0", 38 | "eslint": "6.8.0", 39 | "eslint-config-airbnb": "^18.2.0", 40 | "eslint-config-prettier": "^6.11.0", 41 | "eslint-import-resolver-typescript": "^2.0.0", 42 | "eslint-plugin-import": "^2.20.1", 43 | "eslint-plugin-jsx-a11y": "^6.2.3", 44 | "eslint-plugin-prettier": "^3.1.4", 45 | "eslint-plugin-react": "^7.19.0", 46 | "eslint-plugin-react-hooks": "^2.5.0", 47 | "jest": "^25.1.0", 48 | "metro-react-native-babel-preset": "^0.59.0", 49 | "prettier": "^2.0.5", 50 | "react-test-renderer": "16.13.1", 51 | "typescript": "^3.8.3" 52 | }, 53 | "jest": { 54 | "preset": "react-native", 55 | "moduleFileExtensions": [ 56 | "ts", 57 | "tsx", 58 | "js", 59 | "jsx", 60 | "json", 61 | "node" 62 | ] 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | picpay clone 3 |

4 |

Picpay Clone - Interface feita em ReactNative

5 | 6 |

7 | 8 | GitHub last commit 9 | 10 | PRs welcome! 11 | 12 | License 13 |

14 | 15 |
16 | 17 |

18 | Home 19 | Wallet 20 | gif 21 |

22 | 23 | ## 🚀 Tecnologias 24 | 25 | Entre as tecnologias utilizadas, destaca-se: 26 | 27 | - [Styled Components](https://styled-components.com/) 28 | - [TypeScript](https://www.typescriptlang.org/) 29 | - [React Native v0.63](https://facebook.github.io/react-native/) 30 | - [Yarn](https://yarnpkg.com/) 31 | 32 | 33 | ### 💻 Installation 34 | 35 | ```bash 36 | # Clone this repository 37 | $ git clone https://github.com/daviseares/picpay.git 38 | 39 | # Go into the repository 40 | $ cd picpay 41 | 42 | # Install dependencies 43 | $ yarn 44 | 45 | # IOS 46 | $ cd ios/ 47 | $ pod install 48 | $ cd .. 49 | $ yarn ios 50 | 51 | # Android 52 | $ yarn android 53 | 54 | ``` 55 | 56 | 57 | ## 🤔 Como contribuir 58 | 59 | - Faça um fork desse repositório; 60 | - Cria uma branch com a sua feature: `git checkout -b minha-feature`; 61 | - Faça commit das suas alterações: `git commit -m 'feat: Minha nova feature'`; 62 | - Faça push para a sua branch: `git push origin minha-feature`. 63 | 64 | Depois que o merge da sua pull request for feito, você pode deletar a sua branch. 65 | 66 | ## :memo: Licença 67 | 68 | Esse projeto está sob a licença MIT. Veja o arquivo [LICENSE](LICENSE.md) para mais detalhes. 69 | 70 | --- 71 | 72 | Feito com ♥  by Davi Borges. 73 | 74 | -------------------------------------------------------------------------------- /src/routes.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; 3 | import AntDesign from 'react-native-vector-icons/AntDesign'; 4 | import Ionicons from 'react-native-vector-icons/Ionicons'; 5 | import HomeScreen from './pages/Home'; 6 | import WalletScreen from './pages/Wallet'; 7 | import PayScreen from './pages/Pay'; 8 | 9 | import PayButton from './components/PayButton'; 10 | 11 | const Tab = createBottomTabNavigator(); 12 | 13 | const Routes: React.FC = () => ( 14 | 24 | ( 30 | 31 | ), 32 | }} 33 | /> 34 | ( 40 | 41 | ), 42 | }} 43 | /> 44 | , 50 | }} 51 | /> 52 | ( 58 | 63 | ), 64 | }} 65 | /> 66 | ( 72 | 73 | ), 74 | }} 75 | /> 76 | 77 | ); 78 | 79 | export default Routes; 80 | -------------------------------------------------------------------------------- /src/components/Activities/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import IonIcons from 'react-native-vector-icons/Ionicons'; 3 | import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons'; 4 | import avatar from '../../images/avatar.png'; 5 | 6 | import { 7 | Container, 8 | Header, 9 | Title, 10 | TabContainer, 11 | TabActive, 12 | TabLabelActive, 13 | TabLabel, 14 | Card, 15 | CardHeader, 16 | Avatar, 17 | Description, 18 | Bold, 19 | CardBody, 20 | Details, 21 | CardFooter, 22 | Transaction, 23 | Value, 24 | Divider, 25 | Date, 26 | Actions, 27 | Option, 28 | OptionLabel, 29 | } from './styles'; 30 | 31 | const Activities: React.FC = () => { 32 | return ( 33 | 34 |
35 | Atividades 36 | 37 | 38 | Todas 39 | 40 | Minhas 41 | 42 |
43 | 44 | 45 | 46 | 47 | 48 | @maateusilva pagou a Você 49 | 50 | 51 | 52 | 53 |
ótimo curso!
54 |
55 | 56 | 57 | 58 | R$ 1.500,00 59 | 60 | 61 | 62 | Ontem 63 | 64 | 65 | 73 | 74 | 82 | 83 | 84 |
85 |
86 | ); 87 | }; 88 | 89 | export default Activities; 90 | -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- 1 | # For most projects, this workflow file will not need changing; you simply need 2 | # to commit it to your repository. 3 | # 4 | # You may wish to alter this file to override the set of languages analyzed, 5 | # or to provide custom queries or build logic. 6 | # 7 | # ******** NOTE ******** 8 | # We have attempted to detect the languages in your repository. Please check 9 | # the `language` matrix defined below to confirm you have the correct set of 10 | # supported CodeQL languages. 11 | # 12 | name: "CodeQL" 13 | 14 | on: 15 | push: 16 | branches: [ master ] 17 | pull_request: 18 | # The branches below must be a subset of the branches above 19 | branches: [ master ] 20 | schedule: 21 | - cron: '28 23 * * 4' 22 | 23 | jobs: 24 | analyze: 25 | name: Analyze 26 | runs-on: ubuntu-latest 27 | 28 | strategy: 29 | fail-fast: false 30 | matrix: 31 | language: [ 'java', 'javascript' ] 32 | # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] 33 | # Learn more: 34 | # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed 35 | 36 | steps: 37 | - name: Checkout repository 38 | uses: actions/checkout@v2 39 | 40 | # Initializes the CodeQL tools for scanning. 41 | - name: Initialize CodeQL 42 | uses: github/codeql-action/init@v1 43 | with: 44 | languages: ${{ matrix.language }} 45 | # If you wish to specify custom queries, you can do so here or in a config file. 46 | # By default, queries listed here will override any specified in a config file. 47 | # Prefix the list here with "+" to use these queries and those in the config file. 48 | # queries: ./path/to/local/query, your-org/your-repo/queries@main 49 | 50 | # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). 51 | # If this step fails, then you should remove it and run the build manually (see below) 52 | - name: Autobuild 53 | uses: github/codeql-action/autobuild@v1 54 | 55 | # ℹ️ Command-line programs to run using the OS shell. 56 | # 📚 https://git.io/JvXDl 57 | 58 | # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines 59 | # and modify them (or add more) to build your code if your project 60 | # uses a compiled language 61 | 62 | #- run: | 63 | # make bootstrap 64 | # make release 65 | 66 | - name: Perform CodeQL Analysis 67 | uses: github/codeql-action/analyze@v1 68 | -------------------------------------------------------------------------------- /src/components/Activities/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | 3 | export const Container = styled.View` 4 | margin-top: 15px; 5 | padding: 0 16px; 6 | `; 7 | 8 | export const Header = styled.View` 9 | height: 50px; 10 | align-items: center; 11 | flex-direction: row; 12 | justify-content: space-between; 13 | `; 14 | 15 | export const Title = styled.Text` 16 | color: #fff; 17 | font-size: 18px; 18 | font-weight: bold; 19 | `; 20 | 21 | export const TabContainer = styled.View` 22 | flex-direction: row; 23 | justify-content: space-between; 24 | width: 118px; 25 | `; 26 | 27 | export const TabActive = styled.View` 28 | border-bottom-color: #10c86e; 29 | border-bottom-width: 2px; 30 | `; 31 | 32 | export const TabLabelActive = styled.Text` 33 | color: #10c86e; 34 | font-size: 16px; 35 | font-weight: bold; 36 | `; 37 | export const TabLabel = styled.Text` 38 | color: #fff; 39 | font-size: 16px; 40 | font-weight: bold; 41 | `; 42 | 43 | export const Card = styled.View` 44 | background-color: #1e222b; 45 | border-radius: 8px; 46 | margin-top: 10px; 47 | padding: 15px; 48 | `; 49 | 50 | export const CardHeader = styled.View` 51 | flex-direction: row; 52 | align-items: center; 53 | `; 54 | 55 | export const Avatar = styled.Image``; 56 | 57 | export const Description = styled.Text` 58 | color: #fff; 59 | font-size: 16px; 60 | margin-left: 15px; 61 | `; 62 | 63 | export const Bold = styled.Text` 64 | font-weight: bold; 65 | `; 66 | 67 | export const CardBody = styled.View` 68 | margin-top: 20px; 69 | `; 70 | 71 | export const Details = styled.Text` 72 | color: #fff; 73 | font-size: 20px; 74 | `; 75 | 76 | export const CardFooter = styled.View` 77 | margin-top: 15px; 78 | flex-direction: row; 79 | justify-content: space-between; 80 | `; 81 | 82 | export const Transaction = styled.View` 83 | flex-direction: row; 84 | align-items: center; 85 | `; 86 | 87 | export const Value = styled.Text` 88 | color: #10c86e; 89 | font-size: 14px; 90 | font-weight: bold; 91 | `; 92 | 93 | export const Divider = styled.View` 94 | width: 1px; 95 | height: 13px; 96 | background: #ffffff; 97 | margin: 0 10px; 98 | `; 99 | 100 | export const Date = styled.Text` 101 | color: #fff; 102 | margin-left: 5px; 103 | `; 104 | 105 | export const Actions = styled.View` 106 | flex-direction: row; 107 | `; 108 | 109 | export const Option = styled.TouchableOpacity` 110 | margin-left: 15px; 111 | flex-direction: row; 112 | `; 113 | 114 | export const OptionLabel = styled.Text` 115 | color: #fff; 116 | font-size: 14px; 117 | margin-left: 5px; 118 | `; 119 | -------------------------------------------------------------------------------- /ios/Picpay/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | Picpay 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 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 | NSAppTransportSecurity 28 | 29 | NSAllowsArbitraryLoads 30 | 31 | NSExceptionDomains 32 | 33 | localhost 34 | 35 | NSExceptionAllowsInsecureHTTPLoads 36 | 37 | 38 | 39 | 40 | NSLocationWhenInUseUsageDescription 41 | 42 | UIAppFonts 43 | 44 | AntDesign.ttf 45 | Entypo.ttf 46 | EvilIcons.ttf 47 | Feather.ttf 48 | FontAwesome.ttf 49 | FontAwesome5_Brands.ttf 50 | FontAwesome5_Regular.ttf 51 | FontAwesome5_Solid.ttf 52 | Foundation.ttf 53 | Ionicons.ttf 54 | MaterialCommunityIcons.ttf 55 | MaterialIcons.ttf 56 | Octicons.ttf 57 | Roboto_medium.ttf 58 | Roboto.ttf 59 | rubicon-icon-font.ttf 60 | SimpleLineIcons.ttf 61 | Zocial.ttf 62 | Fontisto.ttf 63 | 64 | UILaunchStoryboardName 65 | LaunchScreen 66 | UIRequiredDeviceCapabilities 67 | 68 | armv7 69 | 70 | UISupportedInterfaceOrientations 71 | 72 | UIInterfaceOrientationPortrait 73 | UIInterfaceOrientationLandscapeLeft 74 | UIInterfaceOrientationLandscapeRight 75 | 76 | UIViewControllerBasedStatusBarAppearance 77 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /ios/Picpay/AppDelegate.m: -------------------------------------------------------------------------------- 1 | #import "AppDelegate.h" 2 | 3 | #import 4 | #import 5 | #import 6 | 7 | #ifdef FB_SONARKIT_ENABLED 8 | #import 9 | #import 10 | #import 11 | #import 12 | #import 13 | #import 14 | 15 | static void InitializeFlipper(UIApplication *application) { 16 | FlipperClient *client = [FlipperClient sharedClient]; 17 | SKDescriptorMapper *layoutDescriptorMapper = 18 | [[SKDescriptorMapper alloc] initWithDefaults]; 19 | [client addPlugin:[[FlipperKitLayoutPlugin alloc] 20 | initWithRootNode:application 21 | withDescriptorMapper:layoutDescriptorMapper]]; 22 | [client addPlugin:[[FKUserDefaultsPlugin alloc] initWithSuiteName:nil]]; 23 | [client addPlugin:[FlipperKitReactPlugin new]]; 24 | [client addPlugin:[[FlipperKitNetworkPlugin alloc] 25 | initWithNetworkAdapter:[SKIOSNetworkAdapter new]]]; 26 | [client start]; 27 | } 28 | #endif 29 | 30 | @implementation AppDelegate 31 | 32 | - (BOOL)application:(UIApplication *)application 33 | didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 34 | #ifdef FB_SONARKIT_ENABLED 35 | InitializeFlipper(application); 36 | #endif 37 | 38 | RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self 39 | launchOptions:launchOptions]; 40 | RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge 41 | moduleName:@"Picpay" 42 | initialProperties:nil]; 43 | 44 | rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f 45 | green:1.0f 46 | blue:1.0f 47 | alpha:1]; 48 | 49 | self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; 50 | UIViewController *rootViewController = [UIViewController new]; 51 | rootViewController.view = rootView; 52 | self.window.rootViewController = rootViewController; 53 | [self.window makeKeyAndVisible]; 54 | return YES; 55 | } 56 | 57 | - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge { 58 | #ifdef FB_SONARKIT_ENABLED 59 | return 60 | [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" 61 | fallbackResource:nil]; 62 | #else 63 | return [[NSBundle mainBundle] URLForResource:@"main" 64 | withExtension:@"jsbundle"]; 65 | #endif 66 | } 67 | 68 | @end 69 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/picpay/MainApplication.java: -------------------------------------------------------------------------------- 1 | package com.picpay; 2 | 3 | import android.app.Application; 4 | import android.content.Context; 5 | import com.facebook.react.PackageList; 6 | import com.facebook.react.ReactApplication; 7 | import com.facebook.react.ReactInstanceManager; 8 | import com.facebook.react.ReactNativeHost; 9 | import com.facebook.react.ReactPackage; 10 | import com.facebook.soloader.SoLoader; 11 | import java.lang.reflect.InvocationTargetException; 12 | import java.util.List; 13 | 14 | public class MainApplication extends Application implements ReactApplication { 15 | 16 | private final ReactNativeHost mReactNativeHost = 17 | new ReactNativeHost(this) { 18 | @Override 19 | public boolean getUseDeveloperSupport() { 20 | return BuildConfig.DEBUG; 21 | } 22 | 23 | @Override 24 | protected List getPackages() { 25 | @SuppressWarnings("UnnecessaryLocalVariable") 26 | List packages = new PackageList(this).getPackages(); 27 | // Packages that cannot be autolinked yet can be added manually here, for example: 28 | // packages.add(new MyReactNativePackage()); 29 | return packages; 30 | } 31 | 32 | @Override 33 | protected String getJSMainModuleName() { 34 | return "index"; 35 | } 36 | }; 37 | 38 | @Override 39 | public ReactNativeHost getReactNativeHost() { 40 | return mReactNativeHost; 41 | } 42 | 43 | @Override 44 | public void onCreate() { 45 | super.onCreate(); 46 | SoLoader.init(this, /* native exopackage */ false); 47 | initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); 48 | } 49 | 50 | /** 51 | * Loads Flipper in React Native templates. Call this in the onCreate method with something like 52 | * initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); 53 | * 54 | * @param context 55 | * @param reactInstanceManager 56 | */ 57 | private static void initializeFlipper( 58 | Context context, ReactInstanceManager reactInstanceManager) { 59 | if (BuildConfig.DEBUG) { 60 | try { 61 | /* 62 | We use reflection here to pick up the class that initializes Flipper, 63 | since Flipper library is not available in release mode 64 | */ 65 | Class aClass = Class.forName("com.picpay.ReactNativeFlipper"); 66 | aClass 67 | .getMethod("initializeFlipper", Context.class, ReactInstanceManager.class) 68 | .invoke(null, context, reactInstanceManager); 69 | } catch (ClassNotFoundException e) { 70 | e.printStackTrace(); 71 | } catch (NoSuchMethodException e) { 72 | e.printStackTrace(); 73 | } catch (IllegalAccessException e) { 74 | e.printStackTrace(); 75 | } catch (InvocationTargetException e) { 76 | e.printStackTrace(); 77 | } 78 | } 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /android/app/src/debug/java/com/picpay/ReactNativeFlipper.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) Facebook, Inc. and its affiliates. 3 | * 4 | *

This source code is licensed under the MIT license found in the LICENSE file in the root 5 | * directory of this source tree. 6 | */ 7 | package com.picpay; 8 | 9 | import android.content.Context; 10 | import com.facebook.flipper.android.AndroidFlipperClient; 11 | import com.facebook.flipper.android.utils.FlipperUtils; 12 | import com.facebook.flipper.core.FlipperClient; 13 | import com.facebook.flipper.plugins.crashreporter.CrashReporterPlugin; 14 | import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin; 15 | import com.facebook.flipper.plugins.fresco.FrescoFlipperPlugin; 16 | import com.facebook.flipper.plugins.inspector.DescriptorMapping; 17 | import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin; 18 | import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor; 19 | import com.facebook.flipper.plugins.network.NetworkFlipperPlugin; 20 | import com.facebook.flipper.plugins.react.ReactFlipperPlugin; 21 | import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin; 22 | import com.facebook.react.ReactInstanceManager; 23 | import com.facebook.react.bridge.ReactContext; 24 | import com.facebook.react.modules.network.NetworkingModule; 25 | import okhttp3.OkHttpClient; 26 | 27 | public class ReactNativeFlipper { 28 | public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { 29 | if (FlipperUtils.shouldEnableFlipper(context)) { 30 | final FlipperClient client = AndroidFlipperClient.getInstance(context); 31 | 32 | client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults())); 33 | client.addPlugin(new ReactFlipperPlugin()); 34 | client.addPlugin(new DatabasesFlipperPlugin(context)); 35 | client.addPlugin(new SharedPreferencesFlipperPlugin(context)); 36 | client.addPlugin(CrashReporterPlugin.getInstance()); 37 | 38 | NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin(); 39 | NetworkingModule.setCustomClientBuilder( 40 | new NetworkingModule.CustomClientBuilder() { 41 | @Override 42 | public void apply(OkHttpClient.Builder builder) { 43 | builder.addNetworkInterceptor(new FlipperOkhttpInterceptor(networkFlipperPlugin)); 44 | } 45 | }); 46 | client.addPlugin(networkFlipperPlugin); 47 | client.start(); 48 | 49 | // Fresco Plugin needs to ensure that ImagePipelineFactory is initialized 50 | // Hence we run if after all native modules have been initialized 51 | ReactContext reactContext = reactInstanceManager.getCurrentReactContext(); 52 | if (reactContext == null) { 53 | reactInstanceManager.addReactInstanceEventListener( 54 | new ReactInstanceManager.ReactInstanceEventListener() { 55 | @Override 56 | public void onReactContextInitialized(ReactContext reactContext) { 57 | reactInstanceManager.removeReactInstanceEventListener(this); 58 | reactContext.runOnNativeModulesQueueThread( 59 | new Runnable() { 60 | @Override 61 | public void run() { 62 | client.addPlugin(new FrescoFlipperPlugin()); 63 | } 64 | }); 65 | } 66 | }); 67 | } else { 68 | client.addPlugin(new FrescoFlipperPlugin()); 69 | } 70 | } 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /android/gradlew.bat: -------------------------------------------------------------------------------- 1 | @rem 2 | @rem Copyright 2015 the original author or authors. 3 | @rem 4 | @rem Licensed under the Apache License, Version 2.0 (the "License"); 5 | @rem you may not use this file except in compliance with the License. 6 | @rem You may obtain a copy of the License at 7 | @rem 8 | @rem https://www.apache.org/licenses/LICENSE-2.0 9 | @rem 10 | @rem Unless required by applicable law or agreed to in writing, software 11 | @rem distributed under the License is distributed on an "AS IS" BASIS, 12 | @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | @rem See the License for the specific language governing permissions and 14 | @rem limitations under the License. 15 | @rem 16 | 17 | @if "%DEBUG%" == "" @echo off 18 | @rem ########################################################################## 19 | @rem 20 | @rem Gradle startup script for Windows 21 | @rem 22 | @rem ########################################################################## 23 | 24 | @rem Set local scope for the variables with windows NT shell 25 | if "%OS%"=="Windows_NT" setlocal 26 | 27 | set DIRNAME=%~dp0 28 | if "%DIRNAME%" == "" set DIRNAME=. 29 | set APP_BASE_NAME=%~n0 30 | set APP_HOME=%DIRNAME% 31 | 32 | @rem Resolve any "." and ".." in APP_HOME to make it shorter. 33 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi 34 | 35 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 36 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" 37 | 38 | @rem Find java.exe 39 | if defined JAVA_HOME goto findJavaFromJavaHome 40 | 41 | set JAVA_EXE=java.exe 42 | %JAVA_EXE% -version >NUL 2>&1 43 | if "%ERRORLEVEL%" == "0" goto init 44 | 45 | echo. 46 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 47 | echo. 48 | echo Please set the JAVA_HOME variable in your environment to match the 49 | echo location of your Java installation. 50 | 51 | goto fail 52 | 53 | :findJavaFromJavaHome 54 | set JAVA_HOME=%JAVA_HOME:"=% 55 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 56 | 57 | if exist "%JAVA_EXE%" goto init 58 | 59 | echo. 60 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 61 | echo. 62 | echo Please set the JAVA_HOME variable in your environment to match the 63 | echo location of your Java installation. 64 | 65 | goto fail 66 | 67 | :init 68 | @rem Get command-line arguments, handling Windows variants 69 | 70 | if not "%OS%" == "Windows_NT" goto win9xME_args 71 | 72 | :win9xME_args 73 | @rem Slurp the command line arguments. 74 | set CMD_LINE_ARGS= 75 | set _SKIP=2 76 | 77 | :win9xME_args_slurp 78 | if "x%~1" == "x" goto execute 79 | 80 | set CMD_LINE_ARGS=%* 81 | 82 | :execute 83 | @rem Setup the command line 84 | 85 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 86 | 87 | @rem Execute Gradle 88 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% 89 | 90 | :end 91 | @rem End local scope for the variables with windows NT shell 92 | if "%ERRORLEVEL%"=="0" goto mainEnd 93 | 94 | :fail 95 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 96 | rem the _cmd.exe /c_ return code! 97 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 98 | exit /b 1 99 | 100 | :mainEnd 101 | if "%OS%"=="Windows_NT" endlocal 102 | 103 | :omega 104 | -------------------------------------------------------------------------------- /ios/Picpay.xcodeproj/xcshareddata/xcschemes/Picpay.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 53 | 55 | 61 | 62 | 63 | 64 | 70 | 72 | 78 | 79 | 80 | 81 | 83 | 84 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /ios/Picpay.xcodeproj/xcshareddata/xcschemes/Picpay-tvOS.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 53 | 55 | 61 | 62 | 63 | 64 | 70 | 72 | 78 | 79 | 80 | 81 | 83 | 84 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /src/pages/Wallet/styles.ts: -------------------------------------------------------------------------------- 1 | import styled from 'styled-components/native'; 2 | import LinearGradient from 'react-native-linear-gradient'; 3 | 4 | export const Wrapper = styled.View` 5 | background: #000; 6 | flex: 1; 7 | `; 8 | 9 | export const Header = styled(LinearGradient)` 10 | height: 300px; 11 | `; 12 | 13 | export const HeaderContainer = styled.SafeAreaView` 14 | flex: 1; 15 | align-items: center; 16 | justify-content: center; 17 | `; 18 | 19 | export const Title = styled.Text` 20 | color: #fff; 21 | font-size: 16px; 22 | font-weight: bold; 23 | `; 24 | 25 | export const BalanceContainer = styled.View` 26 | margin: 10px 0; 27 | flex-direction: row; 28 | align-items: center; 29 | `; 30 | 31 | export const Value = styled.Text` 32 | font-size: 38px; 33 | font-weight: 200; 34 | color: #fff; 35 | `; 36 | 37 | export const Bold = styled.Text` 38 | font-weight: bold; 39 | color: #fff; 40 | `; 41 | 42 | export const EyeButton = styled.TouchableOpacity` 43 | margin-left: 10px; 44 | `; 45 | 46 | export const Info = styled.Text` 47 | color: #fff; 48 | font-size: 16px; 49 | `; 50 | 51 | export const Actions = styled.View` 52 | flex-direction: row; 53 | margin-top: 40px; 54 | `; 55 | 56 | export const ActionButton = styled.TouchableOpacity` 57 | flex-direction: row; 58 | align-items: center; 59 | justify-content: center; 60 | border: 1px solid #fff; 61 | width: 150px; 62 | height: 45px; 63 | border-radius: 50px; 64 | margin: 0 10px; 65 | `; 66 | 67 | export const ActionLabel = styled.Text` 68 | margin-left: 10px; 69 | color: #fff; 70 | font-size: 16px; 71 | `; 72 | 73 | export const UseBalance = styled.View` 74 | background: #1c1c1e; 75 | height: 60px; 76 | flex-direction: row; 77 | padding: 0 16px; 78 | align-items: center; 79 | justify-content: space-between; 80 | `; 81 | 82 | export const UseBalanceTitle = styled.Text` 83 | color: #fff; 84 | font-weight: 600; 85 | font-size: 16px; 86 | `; 87 | 88 | export const PaymentMethods = styled.View` 89 | margin-top: 25px; 90 | padding: 0 16px; 91 | `; 92 | 93 | export const PaymentMethodsTitle = styled.Text` 94 | color: #8e8e93; 95 | text-transform: uppercase; 96 | `; 97 | 98 | export const Card = styled.View` 99 | background: #1e232a; 100 | padding: 20px; 101 | border-radius: 8px; 102 | margin-top: 10px; 103 | `; 104 | 105 | export const CardBody = styled.View` 106 | flex-direction: row; 107 | `; 108 | 109 | export const CardDetails = styled.View` 110 | flex: 1; 111 | margin-right: 15px; 112 | `; 113 | 114 | export const CardTitle = styled.Text` 115 | font-size: 18px; 116 | font-weight: bold; 117 | color: #fff; 118 | `; 119 | export const CardInfo = styled.Text` 120 | font-size: 16px; 121 | color: rgba(255, 255, 255, 0.8); 122 | margin-top: 15px; 123 | `; 124 | 125 | export const Img = styled.Image` 126 | width: 60px; 127 | `; 128 | 129 | export const CardAction = styled.TouchableOpacity` 130 | flex-direction: row; 131 | align-items: center; 132 | margin-top: 25px; 133 | height: 40px; 134 | `; 135 | 136 | export const Circle = styled.View` 137 | border: 1px solid #fff; 138 | border-radius: 50px; 139 | `; 140 | 141 | export const CardActionLabel = styled.Text` 142 | color: #0db060; 143 | font-size: 18px; 144 | font-weight: bold; 145 | margin-left: 15px; 146 | `; 147 | 148 | export const UseTicketButton = styled.TouchableOpacity` 149 | flex-direction: row; 150 | align-self: center; 151 | margin-top: 20px; 152 | padding: 10px; 153 | `; 154 | 155 | export const UseTicketLabel = styled.Text` 156 | color: #0db060; 157 | font-size: 16px; 158 | font-weight: bold; 159 | margin-left: 15px; 160 | `; 161 | -------------------------------------------------------------------------------- /src/pages/Wallet/index.tsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react'; 2 | import { Switch } from 'react-native'; 3 | import Feather from 'react-native-vector-icons/Feather'; 4 | import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons'; 5 | 6 | import creditcard from '../../images/credit-card.png'; 7 | 8 | import { 9 | Wrapper, 10 | Header, 11 | HeaderContainer, 12 | Title, 13 | BalanceContainer, 14 | Value, 15 | Bold, 16 | EyeButton, 17 | Info, 18 | Actions, 19 | ActionButton, 20 | ActionLabel, 21 | UseBalance, 22 | UseBalanceTitle, 23 | PaymentMethods, 24 | PaymentMethodsTitle, 25 | Card, 26 | CardDetails, 27 | CardTitle, 28 | CardInfo, 29 | Img, 30 | CardBody, 31 | CardAction, 32 | Circle, 33 | CardActionLabel, 34 | UseTicketButton, 35 | UseTicketLabel, 36 | } from './styles'; 37 | 38 | const Wallet: React.FC = () => { 39 | const [isVisible, setIsVisible] = useState(true); 40 | const [useBalance, setUseBalance] = useState(true); 41 | 42 | /** 43 | * toggle balance visibility 44 | */ 45 | function handleVisibility(): void { 46 | setIsVisible(prevState => !prevState); 47 | } 48 | 49 | /** 50 | * toggle use balance 51 | */ 52 | function handleUseBalance(): void { 53 | setUseBalance(prevState => !prevState); 54 | } 55 | 56 | return ( 57 | 58 |

61 | 62 | Saldo PicPay 63 | 64 | 65 | R$ {isVisible ? '160.138,20' : '----'} 66 | 67 | 68 | 73 | 74 | 75 | Seu saldo está rendendo 100% do CDI 76 | 77 | 78 | 79 | 80 | Adicionar 81 | 82 | 83 | 88 | Retirar 89 | 90 | 91 | 92 |
93 | 94 | 95 | Usar saldo ao pagar 96 | 97 | 98 | 99 | 100 | Formas de pagamento 101 | 102 | 103 | 104 | 105 | Cadastre seu cartão de crédito 106 | 107 | Cadastre seu cartão de crédito para fazer pagamento mesmo quando 108 | não tiver saldo no seu PicPay. 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | Adicionar cartão de crédito 118 | 119 | 120 | 121 | 122 | 127 | Usar código promocional 128 | 129 | 130 | 131 | ); 132 | }; 133 | 134 | export default Wallet; 135 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | 2 | { 3 | "compilerOptions": { 4 | /* Basic Options */ 5 | "target": "esnext", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ 6 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ 7 | "lib": ["es6"], /* Specify library files to be included in the compilation. */ 8 | "allowJs": true, /* Allow javascript files to be compiled. */ 9 | // "checkJs": true, /* Report errors in .js files. */ 10 | "jsx": "react-native", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ 11 | // "declaration": true, /* Generates corresponding '.d.ts' file. */ 12 | // "sourceMap": true, /* Generates corresponding '.map' file. */ 13 | // "outFile": "./", /* Concatenate and emit output to single file. */ 14 | // "outDir": "./", /* Redirect output structure to the directory. */ 15 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ 16 | // "removeComments": true, /* Do not emit comments to output. */ 17 | "noEmit": true, /* Do not emit outputs. */ 18 | // "incremental": true, /* Enable incremental compilation */ 19 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */ 20 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ 21 | "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ 22 | 23 | /* Strict Type-Checking Options */ 24 | "strict": true, /* Enable all strict type-checking options. */ 25 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ 26 | // "strictNullChecks": true, /* Enable strict null checks. */ 27 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */ 28 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ 29 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ 30 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ 31 | 32 | /* Additional Checks */ 33 | // "noUnusedLocals": true, /* Report errors on unused locals. */ 34 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ 35 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ 36 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ 37 | 38 | /* Module Resolution Options */ 39 | "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ 40 | "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ 41 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ 42 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ 43 | // "typeRoots": [], /* List of folders to include type definitions from. */ 44 | // "types": [], /* Type declaration files to be included in compilation. */ 45 | "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ 46 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ 47 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ 48 | 49 | /* Source Map Options */ 50 | // "sourceRoot": "./", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ 51 | // "mapRoot": "./", /* Specify the location where debugger should locate map files instead of generated locations. */ 52 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ 53 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ 54 | 55 | /* Experimental Options */ 56 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ 57 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ 58 | }, 59 | "exclude": [ 60 | "node_modules", "babel.config.js", "metro.config.js", "jest.config.js" 61 | ] 62 | } 63 | -------------------------------------------------------------------------------- /ios/Picpay/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 25 | 31 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /android/gradlew: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | # 4 | # Copyright 2015 the original author or authors. 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | 19 | ############################################################################## 20 | ## 21 | ## Gradle start up script for UN*X 22 | ## 23 | ############################################################################## 24 | 25 | # Attempt to set APP_HOME 26 | # Resolve links: $0 may be a link 27 | PRG="$0" 28 | # Need this for relative symlinks. 29 | while [ -h "$PRG" ] ; do 30 | ls=`ls -ld "$PRG"` 31 | link=`expr "$ls" : '.*-> \(.*\)$'` 32 | if expr "$link" : '/.*' > /dev/null; then 33 | PRG="$link" 34 | else 35 | PRG=`dirname "$PRG"`"/$link" 36 | fi 37 | done 38 | SAVED="`pwd`" 39 | cd "`dirname \"$PRG\"`/" >/dev/null 40 | APP_HOME="`pwd -P`" 41 | cd "$SAVED" >/dev/null 42 | 43 | APP_NAME="Gradle" 44 | APP_BASE_NAME=`basename "$0"` 45 | 46 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 47 | DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' 48 | 49 | # Use the maximum available, or set MAX_FD != -1 to use that value. 50 | MAX_FD="maximum" 51 | 52 | warn () { 53 | echo "$*" 54 | } 55 | 56 | die () { 57 | echo 58 | echo "$*" 59 | echo 60 | exit 1 61 | } 62 | 63 | # OS specific support (must be 'true' or 'false'). 64 | cygwin=false 65 | msys=false 66 | darwin=false 67 | nonstop=false 68 | case "`uname`" in 69 | CYGWIN* ) 70 | cygwin=true 71 | ;; 72 | Darwin* ) 73 | darwin=true 74 | ;; 75 | MINGW* ) 76 | msys=true 77 | ;; 78 | NONSTOP* ) 79 | nonstop=true 80 | ;; 81 | esac 82 | 83 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 84 | 85 | # Determine the Java command to use to start the JVM. 86 | if [ -n "$JAVA_HOME" ] ; then 87 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 88 | # IBM's JDK on AIX uses strange locations for the executables 89 | JAVACMD="$JAVA_HOME/jre/sh/java" 90 | else 91 | JAVACMD="$JAVA_HOME/bin/java" 92 | fi 93 | if [ ! -x "$JAVACMD" ] ; then 94 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 95 | 96 | Please set the JAVA_HOME variable in your environment to match the 97 | location of your Java installation." 98 | fi 99 | else 100 | JAVACMD="java" 101 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 102 | 103 | Please set the JAVA_HOME variable in your environment to match the 104 | location of your Java installation." 105 | fi 106 | 107 | # Increase the maximum file descriptors if we can. 108 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then 109 | MAX_FD_LIMIT=`ulimit -H -n` 110 | if [ $? -eq 0 ] ; then 111 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then 112 | MAX_FD="$MAX_FD_LIMIT" 113 | fi 114 | ulimit -n $MAX_FD 115 | if [ $? -ne 0 ] ; then 116 | warn "Could not set maximum file descriptor limit: $MAX_FD" 117 | fi 118 | else 119 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" 120 | fi 121 | fi 122 | 123 | # For Darwin, add options to specify how the application appears in the dock 124 | if $darwin; then 125 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" 126 | fi 127 | 128 | # For Cygwin or MSYS, switch paths to Windows format before running java 129 | if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then 130 | APP_HOME=`cygpath --path --mixed "$APP_HOME"` 131 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 132 | JAVACMD=`cygpath --unix "$JAVACMD"` 133 | 134 | # We build the pattern for arguments to be converted via cygpath 135 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` 136 | SEP="" 137 | for dir in $ROOTDIRSRAW ; do 138 | ROOTDIRS="$ROOTDIRS$SEP$dir" 139 | SEP="|" 140 | done 141 | OURCYGPATTERN="(^($ROOTDIRS))" 142 | # Add a user-defined pattern to the cygpath arguments 143 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then 144 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" 145 | fi 146 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 147 | i=0 148 | for arg in "$@" ; do 149 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` 150 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option 151 | 152 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition 153 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` 154 | else 155 | eval `echo args$i`="\"$arg\"" 156 | fi 157 | i=`expr $i + 1` 158 | done 159 | case $i in 160 | 0) set -- ;; 161 | 1) set -- "$args0" ;; 162 | 2) set -- "$args0" "$args1" ;; 163 | 3) set -- "$args0" "$args1" "$args2" ;; 164 | 4) set -- "$args0" "$args1" "$args2" "$args3" ;; 165 | 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 166 | 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 167 | 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 168 | 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 169 | 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; esac 170 | fi 171 | 172 | # Escape application args 173 | save () { 174 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done 175 | echo " " 176 | } 177 | APP_ARGS=`save "$@"` 178 | 179 | # Collect all arguments for the java command, following the shell quoting and substitution rules 180 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" 181 | 182 | exec "$JAVACMD" "$@" 183 | -------------------------------------------------------------------------------- /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. If none specified and 19 | * // "index.android.js" exists, it will be used. Otherwise "index.js" is 20 | * // default. Can be overridden with ENTRY_FILE environment variable. 21 | * entryFile: "index.android.js", 22 | * 23 | * // https://reactnative.dev/docs/performance#enable-the-ram-format 24 | * bundleCommand: "ram-bundle", 25 | * 26 | * // whether to bundle JS and assets in debug mode 27 | * bundleInDebug: false, 28 | * 29 | * // whether to bundle JS and assets in release mode 30 | * bundleInRelease: true, 31 | * 32 | * // whether to bundle JS and assets in another build variant (if configured). 33 | * // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants 34 | * // The configuration property can be in the following formats 35 | * // 'bundleIn${productFlavor}${buildType}' 36 | * // 'bundleIn${buildType}' 37 | * // bundleInFreeDebug: true, 38 | * // bundleInPaidRelease: true, 39 | * // bundleInBeta: true, 40 | * 41 | * // whether to disable dev mode in custom build variants (by default only disabled in release) 42 | * // for example: to disable dev mode in the staging build type (if configured) 43 | * devDisabledInStaging: true, 44 | * // The configuration property can be in the following formats 45 | * // 'devDisabledIn${productFlavor}${buildType}' 46 | * // 'devDisabledIn${buildType}' 47 | * 48 | * // the root of your project, i.e. where "package.json" lives 49 | * root: "../../", 50 | * 51 | * // where to put the JS bundle asset in debug mode 52 | * jsBundleDirDebug: "$buildDir/intermediates/assets/debug", 53 | * 54 | * // where to put the JS bundle asset in release mode 55 | * jsBundleDirRelease: "$buildDir/intermediates/assets/release", 56 | * 57 | * // where to put drawable resources / React Native assets, e.g. the ones you use via 58 | * // require('./image.png')), in debug mode 59 | * resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", 60 | * 61 | * // where to put drawable resources / React Native assets, e.g. the ones you use via 62 | * // require('./image.png')), in release mode 63 | * resourcesDirRelease: "$buildDir/intermediates/res/merged/release", 64 | * 65 | * // by default the gradle tasks are skipped if none of the JS files or assets change; this means 66 | * // that we don't look at files in android/ or ios/ to determine whether the tasks are up to 67 | * // date; if you have any other folders that you want to ignore for performance reasons (gradle 68 | * // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ 69 | * // for example, you might want to remove it from here. 70 | * inputExcludes: ["android/**", "ios/**"], 71 | * 72 | * // override which node gets called and with what additional arguments 73 | * nodeExecutableAndArgs: ["node"], 74 | * 75 | * // supply additional arguments to the packager 76 | * extraPackagerArgs: [] 77 | * ] 78 | */ 79 | 80 | project.ext.react = [ 81 | enableHermes: false, // clean and rebuild if changing 82 | ] 83 | 84 | apply from: "../../node_modules/react-native/react.gradle" 85 | 86 | /** 87 | * Set this to true to create two separate APKs instead of one: 88 | * - An APK that only works on ARM devices 89 | * - An APK that only works on x86 devices 90 | * The advantage is the size of the APK is reduced by about 4MB. 91 | * Upload all the APKs to the Play Store and people will download 92 | * the correct one based on the CPU architecture of their device. 93 | */ 94 | def enableSeparateBuildPerCPUArchitecture = false 95 | 96 | /** 97 | * Run Proguard to shrink the Java bytecode in release builds. 98 | */ 99 | def enableProguardInReleaseBuilds = false 100 | 101 | /** 102 | * The preferred build flavor of JavaScriptCore. 103 | * 104 | * For example, to use the international variant, you can use: 105 | * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` 106 | * 107 | * The international variant includes ICU i18n library and necessary data 108 | * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that 109 | * give correct results when using with locales other than en-US. Note that 110 | * this variant is about 6MiB larger per architecture than default. 111 | */ 112 | def jscFlavor = 'org.webkit:android-jsc:+' 113 | 114 | /** 115 | * Whether to enable the Hermes VM. 116 | * 117 | * This should be set on project.ext.react and mirrored here. If it is not set 118 | * on project.ext.react, JavaScript will not be compiled to Hermes Bytecode 119 | * and the benefits of using Hermes will therefore be sharply reduced. 120 | */ 121 | def enableHermes = project.ext.react.get("enableHermes", false); 122 | 123 | android { 124 | compileSdkVersion rootProject.ext.compileSdkVersion 125 | 126 | compileOptions { 127 | sourceCompatibility JavaVersion.VERSION_1_8 128 | targetCompatibility JavaVersion.VERSION_1_8 129 | } 130 | 131 | defaultConfig { 132 | applicationId "com.picpay" 133 | minSdkVersion rootProject.ext.minSdkVersion 134 | targetSdkVersion rootProject.ext.targetSdkVersion 135 | versionCode 1 136 | versionName "1.0" 137 | } 138 | splits { 139 | abi { 140 | reset() 141 | enable enableSeparateBuildPerCPUArchitecture 142 | universalApk false // If true, also generate a universal APK 143 | include "armeabi-v7a", "x86", "arm64-v8a", "x86_64" 144 | } 145 | } 146 | signingConfigs { 147 | debug { 148 | storeFile file('debug.keystore') 149 | storePassword 'android' 150 | keyAlias 'androiddebugkey' 151 | keyPassword 'android' 152 | } 153 | } 154 | buildTypes { 155 | debug { 156 | signingConfig signingConfigs.debug 157 | } 158 | release { 159 | // Caution! In production, you need to generate your own keystore file. 160 | // see https://reactnative.dev/docs/signed-apk-android. 161 | signingConfig signingConfigs.debug 162 | minifyEnabled enableProguardInReleaseBuilds 163 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" 164 | } 165 | } 166 | 167 | // applicationVariants are e.g. debug, release 168 | applicationVariants.all { variant -> 169 | variant.outputs.each { output -> 170 | // For each separate APK per architecture, set a unique version code as described here: 171 | // https://developer.android.com/studio/build/configure-apk-splits.html 172 | def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4] 173 | def abi = output.getFilter(OutputFile.ABI) 174 | if (abi != null) { // null for the universal-debug, universal-release variants 175 | output.versionCodeOverride = 176 | versionCodes.get(abi) * 1048576 + defaultConfig.versionCode 177 | } 178 | 179 | } 180 | } 181 | } 182 | 183 | dependencies { 184 | implementation fileTree(dir: "libs", include: ["*.jar"]) 185 | //noinspection GradleDynamicVersion 186 | implementation "com.facebook.react:react-native:+" // From node_modules 187 | 188 | implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0" 189 | 190 | debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") { 191 | exclude group:'com.facebook.fbjni' 192 | } 193 | 194 | debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") { 195 | exclude group:'com.facebook.flipper' 196 | } 197 | 198 | debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") { 199 | exclude group:'com.facebook.flipper' 200 | } 201 | 202 | if (enableHermes) { 203 | def hermesPath = "../../node_modules/hermes-engine/android/"; 204 | debugImplementation files(hermesPath + "hermes-debug.aar") 205 | releaseImplementation files(hermesPath + "hermes-release.aar") 206 | } else { 207 | implementation jscFlavor 208 | } 209 | } 210 | 211 | // Run this once to be able to run the application with BUCK 212 | // puts all compile dependencies into folder libs for BUCK to use 213 | task copyDownloadableDepsToLibs(type: Copy) { 214 | from configurations.compile 215 | into 'libs' 216 | } 217 | 218 | apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) 219 | apply from: "../../node_modules/react-native-vector-icons/fonts.gradle" 220 | -------------------------------------------------------------------------------- /ios/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - boost-for-react-native (1.63.0) 3 | - BVLinearGradient (2.5.6): 4 | - React 5 | - CocoaAsyncSocket (7.6.4) 6 | - CocoaLibEvent (1.0.0) 7 | - DoubleConversion (1.1.6) 8 | - FBLazyVector (0.63.0) 9 | - FBReactNativeSpec (0.63.0): 10 | - Folly (= 2020.01.13.00) 11 | - RCTRequired (= 0.63.0) 12 | - RCTTypeSafety (= 0.63.0) 13 | - React-Core (= 0.63.0) 14 | - React-jsi (= 0.63.0) 15 | - ReactCommon/turbomodule/core (= 0.63.0) 16 | - Flipper (0.41.5): 17 | - Flipper-Folly (~> 2.2) 18 | - Flipper-RSocket (~> 1.1) 19 | - Flipper-DoubleConversion (1.1.7) 20 | - Flipper-Folly (2.2.0): 21 | - boost-for-react-native 22 | - CocoaLibEvent (~> 1.0) 23 | - Flipper-DoubleConversion 24 | - Flipper-Glog 25 | - OpenSSL-Universal (= 1.0.2.19) 26 | - Flipper-Glog (0.3.6) 27 | - Flipper-PeerTalk (0.0.4) 28 | - Flipper-RSocket (1.1.0): 29 | - Flipper-Folly (~> 2.2) 30 | - FlipperKit (0.41.5): 31 | - FlipperKit/Core (= 0.41.5) 32 | - FlipperKit/Core (0.41.5): 33 | - Flipper (~> 0.41.5) 34 | - FlipperKit/CppBridge 35 | - FlipperKit/FBCxxFollyDynamicConvert 36 | - FlipperKit/FBDefines 37 | - FlipperKit/FKPortForwarding 38 | - FlipperKit/CppBridge (0.41.5): 39 | - Flipper (~> 0.41.5) 40 | - FlipperKit/FBCxxFollyDynamicConvert (0.41.5): 41 | - Flipper-Folly (~> 2.2) 42 | - FlipperKit/FBDefines (0.41.5) 43 | - FlipperKit/FKPortForwarding (0.41.5): 44 | - CocoaAsyncSocket (~> 7.6) 45 | - Flipper-PeerTalk (~> 0.0.4) 46 | - FlipperKit/FlipperKitHighlightOverlay (0.41.5) 47 | - FlipperKit/FlipperKitLayoutPlugin (0.41.5): 48 | - FlipperKit/Core 49 | - FlipperKit/FlipperKitHighlightOverlay 50 | - FlipperKit/FlipperKitLayoutTextSearchable 51 | - YogaKit (~> 1.18) 52 | - FlipperKit/FlipperKitLayoutTextSearchable (0.41.5) 53 | - FlipperKit/FlipperKitNetworkPlugin (0.41.5): 54 | - FlipperKit/Core 55 | - FlipperKit/FlipperKitReactPlugin (0.41.5): 56 | - FlipperKit/Core 57 | - FlipperKit/FlipperKitUserDefaultsPlugin (0.41.5): 58 | - FlipperKit/Core 59 | - FlipperKit/SKIOSNetworkPlugin (0.41.5): 60 | - FlipperKit/Core 61 | - FlipperKit/FlipperKitNetworkPlugin 62 | - Folly (2020.01.13.00): 63 | - boost-for-react-native 64 | - DoubleConversion 65 | - Folly/Default (= 2020.01.13.00) 66 | - glog 67 | - Folly/Default (2020.01.13.00): 68 | - boost-for-react-native 69 | - DoubleConversion 70 | - glog 71 | - glog (0.3.5) 72 | - OpenSSL-Universal (1.0.2.19): 73 | - OpenSSL-Universal/Static (= 1.0.2.19) 74 | - OpenSSL-Universal/Static (1.0.2.19) 75 | - RCTRequired (0.63.0) 76 | - RCTTypeSafety (0.63.0): 77 | - FBLazyVector (= 0.63.0) 78 | - Folly (= 2020.01.13.00) 79 | - RCTRequired (= 0.63.0) 80 | - React-Core (= 0.63.0) 81 | - React (0.63.0): 82 | - React-Core (= 0.63.0) 83 | - React-Core/DevSupport (= 0.63.0) 84 | - React-Core/RCTWebSocket (= 0.63.0) 85 | - React-RCTActionSheet (= 0.63.0) 86 | - React-RCTAnimation (= 0.63.0) 87 | - React-RCTBlob (= 0.63.0) 88 | - React-RCTImage (= 0.63.0) 89 | - React-RCTLinking (= 0.63.0) 90 | - React-RCTNetwork (= 0.63.0) 91 | - React-RCTSettings (= 0.63.0) 92 | - React-RCTText (= 0.63.0) 93 | - React-RCTVibration (= 0.63.0) 94 | - React-callinvoker (0.63.0) 95 | - React-Core (0.63.0): 96 | - Folly (= 2020.01.13.00) 97 | - glog 98 | - React-Core/Default (= 0.63.0) 99 | - React-cxxreact (= 0.63.0) 100 | - React-jsi (= 0.63.0) 101 | - React-jsiexecutor (= 0.63.0) 102 | - Yoga 103 | - React-Core/CoreModulesHeaders (0.63.0): 104 | - Folly (= 2020.01.13.00) 105 | - glog 106 | - React-Core/Default 107 | - React-cxxreact (= 0.63.0) 108 | - React-jsi (= 0.63.0) 109 | - React-jsiexecutor (= 0.63.0) 110 | - Yoga 111 | - React-Core/Default (0.63.0): 112 | - Folly (= 2020.01.13.00) 113 | - glog 114 | - React-cxxreact (= 0.63.0) 115 | - React-jsi (= 0.63.0) 116 | - React-jsiexecutor (= 0.63.0) 117 | - Yoga 118 | - React-Core/DevSupport (0.63.0): 119 | - Folly (= 2020.01.13.00) 120 | - glog 121 | - React-Core/Default (= 0.63.0) 122 | - React-Core/RCTWebSocket (= 0.63.0) 123 | - React-cxxreact (= 0.63.0) 124 | - React-jsi (= 0.63.0) 125 | - React-jsiexecutor (= 0.63.0) 126 | - React-jsinspector (= 0.63.0) 127 | - Yoga 128 | - React-Core/RCTActionSheetHeaders (0.63.0): 129 | - Folly (= 2020.01.13.00) 130 | - glog 131 | - React-Core/Default 132 | - React-cxxreact (= 0.63.0) 133 | - React-jsi (= 0.63.0) 134 | - React-jsiexecutor (= 0.63.0) 135 | - Yoga 136 | - React-Core/RCTAnimationHeaders (0.63.0): 137 | - Folly (= 2020.01.13.00) 138 | - glog 139 | - React-Core/Default 140 | - React-cxxreact (= 0.63.0) 141 | - React-jsi (= 0.63.0) 142 | - React-jsiexecutor (= 0.63.0) 143 | - Yoga 144 | - React-Core/RCTBlobHeaders (0.63.0): 145 | - Folly (= 2020.01.13.00) 146 | - glog 147 | - React-Core/Default 148 | - React-cxxreact (= 0.63.0) 149 | - React-jsi (= 0.63.0) 150 | - React-jsiexecutor (= 0.63.0) 151 | - Yoga 152 | - React-Core/RCTImageHeaders (0.63.0): 153 | - Folly (= 2020.01.13.00) 154 | - glog 155 | - React-Core/Default 156 | - React-cxxreact (= 0.63.0) 157 | - React-jsi (= 0.63.0) 158 | - React-jsiexecutor (= 0.63.0) 159 | - Yoga 160 | - React-Core/RCTLinkingHeaders (0.63.0): 161 | - Folly (= 2020.01.13.00) 162 | - glog 163 | - React-Core/Default 164 | - React-cxxreact (= 0.63.0) 165 | - React-jsi (= 0.63.0) 166 | - React-jsiexecutor (= 0.63.0) 167 | - Yoga 168 | - React-Core/RCTNetworkHeaders (0.63.0): 169 | - Folly (= 2020.01.13.00) 170 | - glog 171 | - React-Core/Default 172 | - React-cxxreact (= 0.63.0) 173 | - React-jsi (= 0.63.0) 174 | - React-jsiexecutor (= 0.63.0) 175 | - Yoga 176 | - React-Core/RCTSettingsHeaders (0.63.0): 177 | - Folly (= 2020.01.13.00) 178 | - glog 179 | - React-Core/Default 180 | - React-cxxreact (= 0.63.0) 181 | - React-jsi (= 0.63.0) 182 | - React-jsiexecutor (= 0.63.0) 183 | - Yoga 184 | - React-Core/RCTTextHeaders (0.63.0): 185 | - Folly (= 2020.01.13.00) 186 | - glog 187 | - React-Core/Default 188 | - React-cxxreact (= 0.63.0) 189 | - React-jsi (= 0.63.0) 190 | - React-jsiexecutor (= 0.63.0) 191 | - Yoga 192 | - React-Core/RCTVibrationHeaders (0.63.0): 193 | - Folly (= 2020.01.13.00) 194 | - glog 195 | - React-Core/Default 196 | - React-cxxreact (= 0.63.0) 197 | - React-jsi (= 0.63.0) 198 | - React-jsiexecutor (= 0.63.0) 199 | - Yoga 200 | - React-Core/RCTWebSocket (0.63.0): 201 | - Folly (= 2020.01.13.00) 202 | - glog 203 | - React-Core/Default (= 0.63.0) 204 | - React-cxxreact (= 0.63.0) 205 | - React-jsi (= 0.63.0) 206 | - React-jsiexecutor (= 0.63.0) 207 | - Yoga 208 | - React-CoreModules (0.63.0): 209 | - FBReactNativeSpec (= 0.63.0) 210 | - Folly (= 2020.01.13.00) 211 | - RCTTypeSafety (= 0.63.0) 212 | - React-Core/CoreModulesHeaders (= 0.63.0) 213 | - React-jsi (= 0.63.0) 214 | - React-RCTImage (= 0.63.0) 215 | - ReactCommon/turbomodule/core (= 0.63.0) 216 | - React-cxxreact (0.63.0): 217 | - boost-for-react-native (= 1.63.0) 218 | - DoubleConversion 219 | - Folly (= 2020.01.13.00) 220 | - glog 221 | - React-callinvoker (= 0.63.0) 222 | - React-jsinspector (= 0.63.0) 223 | - React-jsi (0.63.0): 224 | - boost-for-react-native (= 1.63.0) 225 | - DoubleConversion 226 | - Folly (= 2020.01.13.00) 227 | - glog 228 | - React-jsi/Default (= 0.63.0) 229 | - React-jsi/Default (0.63.0): 230 | - boost-for-react-native (= 1.63.0) 231 | - DoubleConversion 232 | - Folly (= 2020.01.13.00) 233 | - glog 234 | - React-jsiexecutor (0.63.0): 235 | - DoubleConversion 236 | - Folly (= 2020.01.13.00) 237 | - glog 238 | - React-cxxreact (= 0.63.0) 239 | - React-jsi (= 0.63.0) 240 | - React-jsinspector (0.63.0) 241 | - react-native-safe-area-context (3.1.1): 242 | - React 243 | - React-RCTActionSheet (0.63.0): 244 | - React-Core/RCTActionSheetHeaders (= 0.63.0) 245 | - React-RCTAnimation (0.63.0): 246 | - FBReactNativeSpec (= 0.63.0) 247 | - Folly (= 2020.01.13.00) 248 | - RCTTypeSafety (= 0.63.0) 249 | - React-Core/RCTAnimationHeaders (= 0.63.0) 250 | - React-jsi (= 0.63.0) 251 | - ReactCommon/turbomodule/core (= 0.63.0) 252 | - React-RCTBlob (0.63.0): 253 | - FBReactNativeSpec (= 0.63.0) 254 | - Folly (= 2020.01.13.00) 255 | - React-Core/RCTBlobHeaders (= 0.63.0) 256 | - React-Core/RCTWebSocket (= 0.63.0) 257 | - React-jsi (= 0.63.0) 258 | - React-RCTNetwork (= 0.63.0) 259 | - ReactCommon/turbomodule/core (= 0.63.0) 260 | - React-RCTImage (0.63.0): 261 | - FBReactNativeSpec (= 0.63.0) 262 | - Folly (= 2020.01.13.00) 263 | - RCTTypeSafety (= 0.63.0) 264 | - React-Core/RCTImageHeaders (= 0.63.0) 265 | - React-jsi (= 0.63.0) 266 | - React-RCTNetwork (= 0.63.0) 267 | - ReactCommon/turbomodule/core (= 0.63.0) 268 | - React-RCTLinking (0.63.0): 269 | - FBReactNativeSpec (= 0.63.0) 270 | - React-Core/RCTLinkingHeaders (= 0.63.0) 271 | - React-jsi (= 0.63.0) 272 | - ReactCommon/turbomodule/core (= 0.63.0) 273 | - React-RCTNetwork (0.63.0): 274 | - FBReactNativeSpec (= 0.63.0) 275 | - Folly (= 2020.01.13.00) 276 | - RCTTypeSafety (= 0.63.0) 277 | - React-Core/RCTNetworkHeaders (= 0.63.0) 278 | - React-jsi (= 0.63.0) 279 | - ReactCommon/turbomodule/core (= 0.63.0) 280 | - React-RCTSettings (0.63.0): 281 | - FBReactNativeSpec (= 0.63.0) 282 | - Folly (= 2020.01.13.00) 283 | - RCTTypeSafety (= 0.63.0) 284 | - React-Core/RCTSettingsHeaders (= 0.63.0) 285 | - React-jsi (= 0.63.0) 286 | - ReactCommon/turbomodule/core (= 0.63.0) 287 | - React-RCTText (0.63.0): 288 | - React-Core/RCTTextHeaders (= 0.63.0) 289 | - React-RCTVibration (0.63.0): 290 | - FBReactNativeSpec (= 0.63.0) 291 | - Folly (= 2020.01.13.00) 292 | - React-Core/RCTVibrationHeaders (= 0.63.0) 293 | - React-jsi (= 0.63.0) 294 | - ReactCommon/turbomodule/core (= 0.63.0) 295 | - ReactCommon/turbomodule/core (0.63.0): 296 | - DoubleConversion 297 | - Folly (= 2020.01.13.00) 298 | - glog 299 | - React-callinvoker (= 0.63.0) 300 | - React-Core (= 0.63.0) 301 | - React-cxxreact (= 0.63.0) 302 | - React-jsi (= 0.63.0) 303 | - RNCMaskedView (0.1.10): 304 | - React 305 | - RNGestureHandler (1.6.1): 306 | - React 307 | - RNReanimated (1.9.0): 308 | - React 309 | - RNScreens (2.9.0): 310 | - React 311 | - RNVectorIcons (7.0.0): 312 | - React 313 | - Yoga (1.14.0) 314 | - YogaKit (1.18.1): 315 | - Yoga (~> 1.14) 316 | 317 | DEPENDENCIES: 318 | - BVLinearGradient (from `../node_modules/react-native-linear-gradient`) 319 | - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) 320 | - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) 321 | - FBReactNativeSpec (from `../node_modules/react-native/Libraries/FBReactNativeSpec`) 322 | - Flipper (~> 0.41.1) 323 | - Flipper-DoubleConversion (= 1.1.7) 324 | - Flipper-Folly (~> 2.2) 325 | - Flipper-Glog (= 0.3.6) 326 | - Flipper-PeerTalk (~> 0.0.4) 327 | - Flipper-RSocket (~> 1.1) 328 | - FlipperKit (~> 0.41.1) 329 | - FlipperKit/Core (~> 0.41.1) 330 | - FlipperKit/CppBridge (~> 0.41.1) 331 | - FlipperKit/FBCxxFollyDynamicConvert (~> 0.41.1) 332 | - FlipperKit/FBDefines (~> 0.41.1) 333 | - FlipperKit/FKPortForwarding (~> 0.41.1) 334 | - FlipperKit/FlipperKitHighlightOverlay (~> 0.41.1) 335 | - FlipperKit/FlipperKitLayoutPlugin (~> 0.41.1) 336 | - FlipperKit/FlipperKitLayoutTextSearchable (~> 0.41.1) 337 | - FlipperKit/FlipperKitNetworkPlugin (~> 0.41.1) 338 | - FlipperKit/FlipperKitReactPlugin (~> 0.41.1) 339 | - FlipperKit/FlipperKitUserDefaultsPlugin (~> 0.41.1) 340 | - FlipperKit/SKIOSNetworkPlugin (~> 0.41.1) 341 | - Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`) 342 | - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) 343 | - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) 344 | - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) 345 | - React (from `../node_modules/react-native/`) 346 | - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`) 347 | - React-Core (from `../node_modules/react-native/`) 348 | - React-Core/DevSupport (from `../node_modules/react-native/`) 349 | - React-Core/RCTWebSocket (from `../node_modules/react-native/`) 350 | - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) 351 | - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) 352 | - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) 353 | - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) 354 | - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) 355 | - react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`) 356 | - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) 357 | - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) 358 | - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) 359 | - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) 360 | - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) 361 | - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) 362 | - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) 363 | - React-RCTText (from `../node_modules/react-native/Libraries/Text`) 364 | - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) 365 | - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) 366 | - "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)" 367 | - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) 368 | - RNReanimated (from `../node_modules/react-native-reanimated`) 369 | - RNScreens (from `../node_modules/react-native-screens`) 370 | - RNVectorIcons (from `../node_modules/react-native-vector-icons`) 371 | - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) 372 | 373 | SPEC REPOS: 374 | trunk: 375 | - boost-for-react-native 376 | - CocoaAsyncSocket 377 | - CocoaLibEvent 378 | - Flipper 379 | - Flipper-DoubleConversion 380 | - Flipper-Folly 381 | - Flipper-Glog 382 | - Flipper-PeerTalk 383 | - Flipper-RSocket 384 | - FlipperKit 385 | - OpenSSL-Universal 386 | - YogaKit 387 | 388 | EXTERNAL SOURCES: 389 | BVLinearGradient: 390 | :path: "../node_modules/react-native-linear-gradient" 391 | DoubleConversion: 392 | :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" 393 | FBLazyVector: 394 | :path: "../node_modules/react-native/Libraries/FBLazyVector" 395 | FBReactNativeSpec: 396 | :path: "../node_modules/react-native/Libraries/FBReactNativeSpec" 397 | Folly: 398 | :podspec: "../node_modules/react-native/third-party-podspecs/Folly.podspec" 399 | glog: 400 | :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" 401 | RCTRequired: 402 | :path: "../node_modules/react-native/Libraries/RCTRequired" 403 | RCTTypeSafety: 404 | :path: "../node_modules/react-native/Libraries/TypeSafety" 405 | React: 406 | :path: "../node_modules/react-native/" 407 | React-callinvoker: 408 | :path: "../node_modules/react-native/ReactCommon/callinvoker" 409 | React-Core: 410 | :path: "../node_modules/react-native/" 411 | React-CoreModules: 412 | :path: "../node_modules/react-native/React/CoreModules" 413 | React-cxxreact: 414 | :path: "../node_modules/react-native/ReactCommon/cxxreact" 415 | React-jsi: 416 | :path: "../node_modules/react-native/ReactCommon/jsi" 417 | React-jsiexecutor: 418 | :path: "../node_modules/react-native/ReactCommon/jsiexecutor" 419 | React-jsinspector: 420 | :path: "../node_modules/react-native/ReactCommon/jsinspector" 421 | react-native-safe-area-context: 422 | :path: "../node_modules/react-native-safe-area-context" 423 | React-RCTActionSheet: 424 | :path: "../node_modules/react-native/Libraries/ActionSheetIOS" 425 | React-RCTAnimation: 426 | :path: "../node_modules/react-native/Libraries/NativeAnimation" 427 | React-RCTBlob: 428 | :path: "../node_modules/react-native/Libraries/Blob" 429 | React-RCTImage: 430 | :path: "../node_modules/react-native/Libraries/Image" 431 | React-RCTLinking: 432 | :path: "../node_modules/react-native/Libraries/LinkingIOS" 433 | React-RCTNetwork: 434 | :path: "../node_modules/react-native/Libraries/Network" 435 | React-RCTSettings: 436 | :path: "../node_modules/react-native/Libraries/Settings" 437 | React-RCTText: 438 | :path: "../node_modules/react-native/Libraries/Text" 439 | React-RCTVibration: 440 | :path: "../node_modules/react-native/Libraries/Vibration" 441 | ReactCommon: 442 | :path: "../node_modules/react-native/ReactCommon" 443 | RNCMaskedView: 444 | :path: "../node_modules/@react-native-community/masked-view" 445 | RNGestureHandler: 446 | :path: "../node_modules/react-native-gesture-handler" 447 | RNReanimated: 448 | :path: "../node_modules/react-native-reanimated" 449 | RNScreens: 450 | :path: "../node_modules/react-native-screens" 451 | RNVectorIcons: 452 | :path: "../node_modules/react-native-vector-icons" 453 | Yoga: 454 | :path: "../node_modules/react-native/ReactCommon/yoga" 455 | 456 | SPEC CHECKSUMS: 457 | boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c 458 | BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872 459 | CocoaAsyncSocket: 694058e7c0ed05a9e217d1b3c7ded962f4180845 460 | CocoaLibEvent: 2fab71b8bd46dd33ddb959f7928ec5909f838e3f 461 | DoubleConversion: cde416483dac037923206447da6e1454df403714 462 | FBLazyVector: 6f1045c66f816849b33c4ff28930b611e89059a0 463 | FBReactNativeSpec: e856d5103d749483f86f53afafd8df4ed8a776bd 464 | Flipper: 33585e2d9810fe5528346be33bcf71b37bb7ae13 465 | Flipper-DoubleConversion: 38631e41ef4f9b12861c67d17cb5518d06badc41 466 | Flipper-Folly: c12092ea368353b58e992843a990a3225d4533c3 467 | Flipper-Glog: 1dfd6abf1e922806c52ceb8701a3599a79a200a6 468 | Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 469 | Flipper-RSocket: 64e7431a55835eb953b0bf984ef3b90ae9fdddd7 470 | FlipperKit: bc68102cd4952a258a23c9c1b316c7bec1fecf83 471 | Folly: b73c3869541e86821df3c387eb0af5f65addfab4 472 | glog: 40a13f7840415b9a77023fbcae0f1e6f43192af3 473 | OpenSSL-Universal: 8b48cc0d10c1b2923617dfe5c178aa9ed2689355 474 | RCTRequired: e46bb77db03887b3e200d34b08515c804669db99 475 | RCTTypeSafety: 270fed6675c42f80fb87b47d626ef3cede1505e6 476 | React: e008906ff1328f9bccb345ff4f7826397ad223fc 477 | React-callinvoker: f547824e0a626f4bce516ee65f548004b0784e7e 478 | React-Core: 1c28d2ecde60ded3fe42d8db4f684afb8709757b 479 | React-CoreModules: 8e6139e59f5347e2cf3ceb63e4532fb5b4b39a2d 480 | React-cxxreact: 98fef06e1ca59eb075ef5bc4c6f256d5c6840936 481 | React-jsi: 254710f3a97e587427bfbf3011dacec2af66a1fc 482 | React-jsiexecutor: 0e0cb4e170ca72d4bb1179843d08dcbea3d100ac 483 | React-jsinspector: fc661eff8edbfb7e22119382c13f33bcadde0f3c 484 | react-native-safe-area-context: 344b969c45af3d8464d36e8dea264942992ef033 485 | React-RCTActionSheet: aadd91a1d6cbfae50dd41f140004f816e9e47ade 486 | React-RCTAnimation: 7fa2ef6c0ef1e3f0b7d2261c827ec94412deb5e6 487 | React-RCTBlob: ccbbc70295aee3a76a70323b48f63fb7a7fcffd6 488 | React-RCTImage: d94eb3080b37a4527ade4dd5f9f1289b7ba68089 489 | React-RCTLinking: ddd2a1ddb699bade352d4747d5652f4c425c747a 490 | React-RCTNetwork: 4590b11cc6e99eb01a48f1c03bcadfb8b792d005 491 | React-RCTSettings: 9197a492268a088c5213ef8a08cfc60b7a141369 492 | React-RCTText: ba503bf4cce41881ca258ba789c33e017955efdd 493 | React-RCTVibration: 77ab1cf4a5eb854b88ad5ed3e9d8509ed124525e 494 | ReactCommon: f63556ee9e41e9802257228237e5e660451a03cf 495 | RNCMaskedView: 5a8ec07677aa885546a0d98da336457e2bea557f 496 | RNGestureHandler: 8f09cd560f8d533eb36da5a6c5a843af9f056b38 497 | RNReanimated: b5ccb50650ba06f6e749c7c329a1bc3ae0c88b43 498 | RNScreens: c526239bbe0e957b988dacc8d75ac94ec9cb19da 499 | RNVectorIcons: da6fe858f5a65d7bbc3379540a889b0b12aa5976 500 | Yoga: 7d2edc5b410474191962e6dee88ee67f9b328b6b 501 | YogaKit: f782866e155069a2cca2517aafea43200b01fd5a 502 | 503 | PODFILE CHECKSUM: f628520c1bc0a4fa9a81b1969b8e173f8538c614 504 | 505 | COCOAPODS: 1.9.3 506 | -------------------------------------------------------------------------------- /ios/Picpay.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 00E356F31AD99517003FC87E /* PicpayTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* PicpayTests.m */; }; 11 | 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 12 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13 | 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 14 | 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 15 | 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 16 | 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 17 | 2DCD954D1E0B4F2C00145EB5 /* PicpayTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* PicpayTests.m */; }; 18 | 6DE1035BF7DE317FE9E328C2 /* libPods-Picpay.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0B32E30124374EF66F22F144 /* libPods-Picpay.a */; }; 19 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; 20 | C5A2E9E15985BB9A5A338FCD /* libPods-Picpay-PicpayTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F36FD6641BD6D81442298FE /* libPods-Picpay-PicpayTests.a */; }; 21 | /* End PBXBuildFile section */ 22 | 23 | /* Begin PBXContainerItemProxy section */ 24 | 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = { 25 | isa = PBXContainerItemProxy; 26 | containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; 27 | proxyType = 1; 28 | remoteGlobalIDString = 13B07F861A680F5B00A75B9A; 29 | remoteInfo = Picpay; 30 | }; 31 | 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */ = { 32 | isa = PBXContainerItemProxy; 33 | containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; 34 | proxyType = 1; 35 | remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; 36 | remoteInfo = "Picpay-tvOS"; 37 | }; 38 | /* End PBXContainerItemProxy section */ 39 | 40 | /* Begin PBXFileReference section */ 41 | 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; 42 | 00E356EE1AD99517003FC87E /* PicpayTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PicpayTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 43 | 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 44 | 00E356F21AD99517003FC87E /* PicpayTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PicpayTests.m; sourceTree = ""; }; 45 | 0B32E30124374EF66F22F144 /* libPods-Picpay.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Picpay.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 46 | 0F36FD6641BD6D81442298FE /* libPods-Picpay-PicpayTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Picpay-PicpayTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 47 | 13B07F961A680F5B00A75B9A /* Picpay.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Picpay.app; sourceTree = BUILT_PRODUCTS_DIR; }; 48 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Picpay/AppDelegate.h; sourceTree = ""; }; 49 | 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = Picpay/AppDelegate.m; sourceTree = ""; }; 50 | 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Picpay/Images.xcassets; sourceTree = ""; }; 51 | 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Picpay/Info.plist; sourceTree = ""; }; 52 | 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Picpay/main.m; sourceTree = ""; }; 53 | 2D02E47B1E0B4A5D006451C7 /* Picpay-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Picpay-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 54 | 2D02E4901E0B4A5D006451C7 /* Picpay-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Picpay-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 55 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = Picpay/LaunchScreen.storyboard; sourceTree = ""; }; 56 | 920AE01196CF291853BA329C /* Pods-Picpay-PicpayTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Picpay-PicpayTests.release.xcconfig"; path = "Target Support Files/Pods-Picpay-PicpayTests/Pods-Picpay-PicpayTests.release.xcconfig"; sourceTree = ""; }; 57 | A73D6623F5213E78782B8867 /* Pods-Picpay.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Picpay.release.xcconfig"; path = "Target Support Files/Pods-Picpay/Pods-Picpay.release.xcconfig"; sourceTree = ""; }; 58 | D5B2C53165757B8DB1E88994 /* Pods-Picpay-PicpayTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Picpay-PicpayTests.debug.xcconfig"; path = "Target Support Files/Pods-Picpay-PicpayTests/Pods-Picpay-PicpayTests.debug.xcconfig"; sourceTree = ""; }; 59 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; 60 | ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; 61 | F3E913972B31574447799D3B /* Pods-Picpay.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Picpay.debug.xcconfig"; path = "Target Support Files/Pods-Picpay/Pods-Picpay.debug.xcconfig"; sourceTree = ""; }; 62 | /* End PBXFileReference section */ 63 | 64 | /* Begin PBXFrameworksBuildPhase section */ 65 | 00E356EB1AD99517003FC87E /* Frameworks */ = { 66 | isa = PBXFrameworksBuildPhase; 67 | buildActionMask = 2147483647; 68 | files = ( 69 | C5A2E9E15985BB9A5A338FCD /* libPods-Picpay-PicpayTests.a in Frameworks */, 70 | ); 71 | runOnlyForDeploymentPostprocessing = 0; 72 | }; 73 | 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { 74 | isa = PBXFrameworksBuildPhase; 75 | buildActionMask = 2147483647; 76 | files = ( 77 | 6DE1035BF7DE317FE9E328C2 /* libPods-Picpay.a in Frameworks */, 78 | ); 79 | runOnlyForDeploymentPostprocessing = 0; 80 | }; 81 | 2D02E4781E0B4A5D006451C7 /* Frameworks */ = { 82 | isa = PBXFrameworksBuildPhase; 83 | buildActionMask = 2147483647; 84 | files = ( 85 | ); 86 | runOnlyForDeploymentPostprocessing = 0; 87 | }; 88 | 2D02E48D1E0B4A5D006451C7 /* Frameworks */ = { 89 | isa = PBXFrameworksBuildPhase; 90 | buildActionMask = 2147483647; 91 | files = ( 92 | ); 93 | runOnlyForDeploymentPostprocessing = 0; 94 | }; 95 | /* End PBXFrameworksBuildPhase section */ 96 | 97 | /* Begin PBXGroup section */ 98 | 00E356EF1AD99517003FC87E /* PicpayTests */ = { 99 | isa = PBXGroup; 100 | children = ( 101 | 00E356F21AD99517003FC87E /* PicpayTests.m */, 102 | 00E356F01AD99517003FC87E /* Supporting Files */, 103 | ); 104 | path = PicpayTests; 105 | sourceTree = ""; 106 | }; 107 | 00E356F01AD99517003FC87E /* Supporting Files */ = { 108 | isa = PBXGroup; 109 | children = ( 110 | 00E356F11AD99517003FC87E /* Info.plist */, 111 | ); 112 | name = "Supporting Files"; 113 | sourceTree = ""; 114 | }; 115 | 13B07FAE1A68108700A75B9A /* Picpay */ = { 116 | isa = PBXGroup; 117 | children = ( 118 | 008F07F21AC5B25A0029DE68 /* main.jsbundle */, 119 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */, 120 | 13B07FB01A68108700A75B9A /* AppDelegate.m */, 121 | 13B07FB51A68108700A75B9A /* Images.xcassets */, 122 | 13B07FB61A68108700A75B9A /* Info.plist */, 123 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */, 124 | 13B07FB71A68108700A75B9A /* main.m */, 125 | ); 126 | name = Picpay; 127 | sourceTree = ""; 128 | }; 129 | 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { 130 | isa = PBXGroup; 131 | children = ( 132 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */, 133 | ED2971642150620600B7C4FE /* JavaScriptCore.framework */, 134 | 0B32E30124374EF66F22F144 /* libPods-Picpay.a */, 135 | 0F36FD6641BD6D81442298FE /* libPods-Picpay-PicpayTests.a */, 136 | ); 137 | name = Frameworks; 138 | sourceTree = ""; 139 | }; 140 | 832341AE1AAA6A7D00B99B32 /* Libraries */ = { 141 | isa = PBXGroup; 142 | children = ( 143 | ); 144 | name = Libraries; 145 | sourceTree = ""; 146 | }; 147 | 83CBB9F61A601CBA00E9B192 = { 148 | isa = PBXGroup; 149 | children = ( 150 | 13B07FAE1A68108700A75B9A /* Picpay */, 151 | 832341AE1AAA6A7D00B99B32 /* Libraries */, 152 | 00E356EF1AD99517003FC87E /* PicpayTests */, 153 | 83CBBA001A601CBA00E9B192 /* Products */, 154 | 2D16E6871FA4F8E400B85C8A /* Frameworks */, 155 | 896751923113820FB4EA36BE /* Pods */, 156 | ); 157 | indentWidth = 2; 158 | sourceTree = ""; 159 | tabWidth = 2; 160 | usesTabs = 0; 161 | }; 162 | 83CBBA001A601CBA00E9B192 /* Products */ = { 163 | isa = PBXGroup; 164 | children = ( 165 | 13B07F961A680F5B00A75B9A /* Picpay.app */, 166 | 00E356EE1AD99517003FC87E /* PicpayTests.xctest */, 167 | 2D02E47B1E0B4A5D006451C7 /* Picpay-tvOS.app */, 168 | 2D02E4901E0B4A5D006451C7 /* Picpay-tvOSTests.xctest */, 169 | ); 170 | name = Products; 171 | sourceTree = ""; 172 | }; 173 | 896751923113820FB4EA36BE /* Pods */ = { 174 | isa = PBXGroup; 175 | children = ( 176 | F3E913972B31574447799D3B /* Pods-Picpay.debug.xcconfig */, 177 | A73D6623F5213E78782B8867 /* Pods-Picpay.release.xcconfig */, 178 | D5B2C53165757B8DB1E88994 /* Pods-Picpay-PicpayTests.debug.xcconfig */, 179 | 920AE01196CF291853BA329C /* Pods-Picpay-PicpayTests.release.xcconfig */, 180 | ); 181 | name = Pods; 182 | path = Pods; 183 | sourceTree = ""; 184 | }; 185 | /* End PBXGroup section */ 186 | 187 | /* Begin PBXNativeTarget section */ 188 | 00E356ED1AD99517003FC87E /* PicpayTests */ = { 189 | isa = PBXNativeTarget; 190 | buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "PicpayTests" */; 191 | buildPhases = ( 192 | 99B57772D4E3BBB71ECEB08D /* [CP] Check Pods Manifest.lock */, 193 | 00E356EA1AD99517003FC87E /* Sources */, 194 | 00E356EB1AD99517003FC87E /* Frameworks */, 195 | 00E356EC1AD99517003FC87E /* Resources */, 196 | 4DF74E02309D0674CD39F2F6 /* [CP] Copy Pods Resources */, 197 | ); 198 | buildRules = ( 199 | ); 200 | dependencies = ( 201 | 00E356F51AD99517003FC87E /* PBXTargetDependency */, 202 | ); 203 | name = PicpayTests; 204 | productName = PicpayTests; 205 | productReference = 00E356EE1AD99517003FC87E /* PicpayTests.xctest */; 206 | productType = "com.apple.product-type.bundle.unit-test"; 207 | }; 208 | 13B07F861A680F5B00A75B9A /* Picpay */ = { 209 | isa = PBXNativeTarget; 210 | buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Picpay" */; 211 | buildPhases = ( 212 | 0420A8CB575674623975BAD1 /* [CP] Check Pods Manifest.lock */, 213 | FD10A7F022414F080027D42C /* Start Packager */, 214 | 13B07F871A680F5B00A75B9A /* Sources */, 215 | 13B07F8C1A680F5B00A75B9A /* Frameworks */, 216 | 13B07F8E1A680F5B00A75B9A /* Resources */, 217 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, 218 | 7673B7292A47C1F4F6B8C9E4 /* [CP] Copy Pods Resources */, 219 | ); 220 | buildRules = ( 221 | ); 222 | dependencies = ( 223 | ); 224 | name = Picpay; 225 | productName = Picpay; 226 | productReference = 13B07F961A680F5B00A75B9A /* Picpay.app */; 227 | productType = "com.apple.product-type.application"; 228 | }; 229 | 2D02E47A1E0B4A5D006451C7 /* Picpay-tvOS */ = { 230 | isa = PBXNativeTarget; 231 | buildConfigurationList = 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "Picpay-tvOS" */; 232 | buildPhases = ( 233 | FD10A7F122414F3F0027D42C /* Start Packager */, 234 | 2D02E4771E0B4A5D006451C7 /* Sources */, 235 | 2D02E4781E0B4A5D006451C7 /* Frameworks */, 236 | 2D02E4791E0B4A5D006451C7 /* Resources */, 237 | 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */, 238 | ); 239 | buildRules = ( 240 | ); 241 | dependencies = ( 242 | ); 243 | name = "Picpay-tvOS"; 244 | productName = "Picpay-tvOS"; 245 | productReference = 2D02E47B1E0B4A5D006451C7 /* Picpay-tvOS.app */; 246 | productType = "com.apple.product-type.application"; 247 | }; 248 | 2D02E48F1E0B4A5D006451C7 /* Picpay-tvOSTests */ = { 249 | isa = PBXNativeTarget; 250 | buildConfigurationList = 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "Picpay-tvOSTests" */; 251 | buildPhases = ( 252 | 2D02E48C1E0B4A5D006451C7 /* Sources */, 253 | 2D02E48D1E0B4A5D006451C7 /* Frameworks */, 254 | 2D02E48E1E0B4A5D006451C7 /* Resources */, 255 | ); 256 | buildRules = ( 257 | ); 258 | dependencies = ( 259 | 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */, 260 | ); 261 | name = "Picpay-tvOSTests"; 262 | productName = "Picpay-tvOSTests"; 263 | productReference = 2D02E4901E0B4A5D006451C7 /* Picpay-tvOSTests.xctest */; 264 | productType = "com.apple.product-type.bundle.unit-test"; 265 | }; 266 | /* End PBXNativeTarget section */ 267 | 268 | /* Begin PBXProject section */ 269 | 83CBB9F71A601CBA00E9B192 /* Project object */ = { 270 | isa = PBXProject; 271 | attributes = { 272 | LastUpgradeCheck = 1130; 273 | TargetAttributes = { 274 | 00E356ED1AD99517003FC87E = { 275 | CreatedOnToolsVersion = 6.2; 276 | TestTargetID = 13B07F861A680F5B00A75B9A; 277 | }; 278 | 13B07F861A680F5B00A75B9A = { 279 | LastSwiftMigration = 1120; 280 | }; 281 | 2D02E47A1E0B4A5D006451C7 = { 282 | CreatedOnToolsVersion = 8.2.1; 283 | ProvisioningStyle = Automatic; 284 | }; 285 | 2D02E48F1E0B4A5D006451C7 = { 286 | CreatedOnToolsVersion = 8.2.1; 287 | ProvisioningStyle = Automatic; 288 | TestTargetID = 2D02E47A1E0B4A5D006451C7; 289 | }; 290 | }; 291 | }; 292 | buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "Picpay" */; 293 | compatibilityVersion = "Xcode 3.2"; 294 | developmentRegion = en; 295 | hasScannedForEncodings = 0; 296 | knownRegions = ( 297 | en, 298 | Base, 299 | ); 300 | mainGroup = 83CBB9F61A601CBA00E9B192; 301 | productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; 302 | projectDirPath = ""; 303 | projectRoot = ""; 304 | targets = ( 305 | 13B07F861A680F5B00A75B9A /* Picpay */, 306 | 00E356ED1AD99517003FC87E /* PicpayTests */, 307 | 2D02E47A1E0B4A5D006451C7 /* Picpay-tvOS */, 308 | 2D02E48F1E0B4A5D006451C7 /* Picpay-tvOSTests */, 309 | ); 310 | }; 311 | /* End PBXProject section */ 312 | 313 | /* Begin PBXResourcesBuildPhase section */ 314 | 00E356EC1AD99517003FC87E /* Resources */ = { 315 | isa = PBXResourcesBuildPhase; 316 | buildActionMask = 2147483647; 317 | files = ( 318 | ); 319 | runOnlyForDeploymentPostprocessing = 0; 320 | }; 321 | 13B07F8E1A680F5B00A75B9A /* Resources */ = { 322 | isa = PBXResourcesBuildPhase; 323 | buildActionMask = 2147483647; 324 | files = ( 325 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */, 326 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 327 | ); 328 | runOnlyForDeploymentPostprocessing = 0; 329 | }; 330 | 2D02E4791E0B4A5D006451C7 /* Resources */ = { 331 | isa = PBXResourcesBuildPhase; 332 | buildActionMask = 2147483647; 333 | files = ( 334 | 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */, 335 | ); 336 | runOnlyForDeploymentPostprocessing = 0; 337 | }; 338 | 2D02E48E1E0B4A5D006451C7 /* Resources */ = { 339 | isa = PBXResourcesBuildPhase; 340 | buildActionMask = 2147483647; 341 | files = ( 342 | ); 343 | runOnlyForDeploymentPostprocessing = 0; 344 | }; 345 | /* End PBXResourcesBuildPhase section */ 346 | 347 | /* Begin PBXShellScriptBuildPhase section */ 348 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { 349 | isa = PBXShellScriptBuildPhase; 350 | buildActionMask = 2147483647; 351 | files = ( 352 | ); 353 | inputPaths = ( 354 | ); 355 | name = "Bundle React Native code and images"; 356 | outputPaths = ( 357 | ); 358 | runOnlyForDeploymentPostprocessing = 0; 359 | shellPath = /bin/sh; 360 | shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; 361 | }; 362 | 0420A8CB575674623975BAD1 /* [CP] Check Pods Manifest.lock */ = { 363 | isa = PBXShellScriptBuildPhase; 364 | buildActionMask = 2147483647; 365 | files = ( 366 | ); 367 | inputFileListPaths = ( 368 | ); 369 | inputPaths = ( 370 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 371 | "${PODS_ROOT}/Manifest.lock", 372 | ); 373 | name = "[CP] Check Pods Manifest.lock"; 374 | outputFileListPaths = ( 375 | ); 376 | outputPaths = ( 377 | "$(DERIVED_FILE_DIR)/Pods-Picpay-checkManifestLockResult.txt", 378 | ); 379 | runOnlyForDeploymentPostprocessing = 0; 380 | shellPath = /bin/sh; 381 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 382 | showEnvVarsInLog = 0; 383 | }; 384 | 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */ = { 385 | isa = PBXShellScriptBuildPhase; 386 | buildActionMask = 2147483647; 387 | files = ( 388 | ); 389 | inputPaths = ( 390 | ); 391 | name = "Bundle React Native Code And Images"; 392 | outputPaths = ( 393 | ); 394 | runOnlyForDeploymentPostprocessing = 0; 395 | shellPath = /bin/sh; 396 | shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; 397 | }; 398 | 4DF74E02309D0674CD39F2F6 /* [CP] Copy Pods Resources */ = { 399 | isa = PBXShellScriptBuildPhase; 400 | buildActionMask = 2147483647; 401 | files = ( 402 | ); 403 | inputPaths = ( 404 | "${PODS_ROOT}/Target Support Files/Pods-Picpay-PicpayTests/Pods-Picpay-PicpayTests-resources.sh", 405 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", 406 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", 407 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", 408 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", 409 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", 410 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", 411 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", 412 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", 413 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", 414 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", 415 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", 416 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", 417 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", 418 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", 419 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", 420 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", 421 | "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", 422 | ); 423 | name = "[CP] Copy Pods Resources"; 424 | outputPaths = ( 425 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", 426 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", 427 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", 428 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", 429 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", 430 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", 431 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", 432 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", 433 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", 434 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", 435 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", 436 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", 437 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", 438 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", 439 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", 440 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", 441 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", 442 | ); 443 | runOnlyForDeploymentPostprocessing = 0; 444 | shellPath = /bin/sh; 445 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Picpay-PicpayTests/Pods-Picpay-PicpayTests-resources.sh\"\n"; 446 | showEnvVarsInLog = 0; 447 | }; 448 | 7673B7292A47C1F4F6B8C9E4 /* [CP] Copy Pods Resources */ = { 449 | isa = PBXShellScriptBuildPhase; 450 | buildActionMask = 2147483647; 451 | files = ( 452 | ); 453 | inputPaths = ( 454 | "${PODS_ROOT}/Target Support Files/Pods-Picpay/Pods-Picpay-resources.sh", 455 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", 456 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", 457 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", 458 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", 459 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", 460 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", 461 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", 462 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", 463 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", 464 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", 465 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", 466 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", 467 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", 468 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", 469 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", 470 | "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", 471 | "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", 472 | ); 473 | name = "[CP] Copy Pods Resources"; 474 | outputPaths = ( 475 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", 476 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", 477 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", 478 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", 479 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", 480 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", 481 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", 482 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", 483 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", 484 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", 485 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", 486 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", 487 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", 488 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", 489 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", 490 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", 491 | "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", 492 | ); 493 | runOnlyForDeploymentPostprocessing = 0; 494 | shellPath = /bin/sh; 495 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Picpay/Pods-Picpay-resources.sh\"\n"; 496 | showEnvVarsInLog = 0; 497 | }; 498 | 99B57772D4E3BBB71ECEB08D /* [CP] Check Pods Manifest.lock */ = { 499 | isa = PBXShellScriptBuildPhase; 500 | buildActionMask = 2147483647; 501 | files = ( 502 | ); 503 | inputFileListPaths = ( 504 | ); 505 | inputPaths = ( 506 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 507 | "${PODS_ROOT}/Manifest.lock", 508 | ); 509 | name = "[CP] Check Pods Manifest.lock"; 510 | outputFileListPaths = ( 511 | ); 512 | outputPaths = ( 513 | "$(DERIVED_FILE_DIR)/Pods-Picpay-PicpayTests-checkManifestLockResult.txt", 514 | ); 515 | runOnlyForDeploymentPostprocessing = 0; 516 | shellPath = /bin/sh; 517 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 518 | showEnvVarsInLog = 0; 519 | }; 520 | FD10A7F022414F080027D42C /* Start Packager */ = { 521 | isa = PBXShellScriptBuildPhase; 522 | buildActionMask = 2147483647; 523 | files = ( 524 | ); 525 | inputFileListPaths = ( 526 | ); 527 | inputPaths = ( 528 | ); 529 | name = "Start Packager"; 530 | outputFileListPaths = ( 531 | ); 532 | outputPaths = ( 533 | ); 534 | runOnlyForDeploymentPostprocessing = 0; 535 | shellPath = /bin/sh; 536 | shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; 537 | showEnvVarsInLog = 0; 538 | }; 539 | FD10A7F122414F3F0027D42C /* Start Packager */ = { 540 | isa = PBXShellScriptBuildPhase; 541 | buildActionMask = 2147483647; 542 | files = ( 543 | ); 544 | inputFileListPaths = ( 545 | ); 546 | inputPaths = ( 547 | ); 548 | name = "Start Packager"; 549 | outputFileListPaths = ( 550 | ); 551 | outputPaths = ( 552 | ); 553 | runOnlyForDeploymentPostprocessing = 0; 554 | shellPath = /bin/sh; 555 | shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; 556 | showEnvVarsInLog = 0; 557 | }; 558 | /* End PBXShellScriptBuildPhase section */ 559 | 560 | /* Begin PBXSourcesBuildPhase section */ 561 | 00E356EA1AD99517003FC87E /* Sources */ = { 562 | isa = PBXSourcesBuildPhase; 563 | buildActionMask = 2147483647; 564 | files = ( 565 | 00E356F31AD99517003FC87E /* PicpayTests.m in Sources */, 566 | ); 567 | runOnlyForDeploymentPostprocessing = 0; 568 | }; 569 | 13B07F871A680F5B00A75B9A /* Sources */ = { 570 | isa = PBXSourcesBuildPhase; 571 | buildActionMask = 2147483647; 572 | files = ( 573 | 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */, 574 | 13B07FC11A68108700A75B9A /* main.m in Sources */, 575 | ); 576 | runOnlyForDeploymentPostprocessing = 0; 577 | }; 578 | 2D02E4771E0B4A5D006451C7 /* Sources */ = { 579 | isa = PBXSourcesBuildPhase; 580 | buildActionMask = 2147483647; 581 | files = ( 582 | 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */, 583 | 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */, 584 | ); 585 | runOnlyForDeploymentPostprocessing = 0; 586 | }; 587 | 2D02E48C1E0B4A5D006451C7 /* Sources */ = { 588 | isa = PBXSourcesBuildPhase; 589 | buildActionMask = 2147483647; 590 | files = ( 591 | 2DCD954D1E0B4F2C00145EB5 /* PicpayTests.m in Sources */, 592 | ); 593 | runOnlyForDeploymentPostprocessing = 0; 594 | }; 595 | /* End PBXSourcesBuildPhase section */ 596 | 597 | /* Begin PBXTargetDependency section */ 598 | 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { 599 | isa = PBXTargetDependency; 600 | target = 13B07F861A680F5B00A75B9A /* Picpay */; 601 | targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; 602 | }; 603 | 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */ = { 604 | isa = PBXTargetDependency; 605 | target = 2D02E47A1E0B4A5D006451C7 /* Picpay-tvOS */; 606 | targetProxy = 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */; 607 | }; 608 | /* End PBXTargetDependency section */ 609 | 610 | /* Begin XCBuildConfiguration section */ 611 | 00E356F61AD99517003FC87E /* Debug */ = { 612 | isa = XCBuildConfiguration; 613 | baseConfigurationReference = D5B2C53165757B8DB1E88994 /* Pods-Picpay-PicpayTests.debug.xcconfig */; 614 | buildSettings = { 615 | BUNDLE_LOADER = "$(TEST_HOST)"; 616 | GCC_PREPROCESSOR_DEFINITIONS = ( 617 | "DEBUG=1", 618 | "$(inherited)", 619 | ); 620 | INFOPLIST_FILE = PicpayTests/Info.plist; 621 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 622 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 623 | OTHER_LDFLAGS = ( 624 | "-ObjC", 625 | "-lc++", 626 | "$(inherited)", 627 | ); 628 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 629 | PRODUCT_NAME = "$(TARGET_NAME)"; 630 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Picpay.app/Picpay"; 631 | }; 632 | name = Debug; 633 | }; 634 | 00E356F71AD99517003FC87E /* Release */ = { 635 | isa = XCBuildConfiguration; 636 | baseConfigurationReference = 920AE01196CF291853BA329C /* Pods-Picpay-PicpayTests.release.xcconfig */; 637 | buildSettings = { 638 | BUNDLE_LOADER = "$(TEST_HOST)"; 639 | COPY_PHASE_STRIP = NO; 640 | INFOPLIST_FILE = PicpayTests/Info.plist; 641 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 642 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 643 | OTHER_LDFLAGS = ( 644 | "-ObjC", 645 | "-lc++", 646 | "$(inherited)", 647 | ); 648 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 649 | PRODUCT_NAME = "$(TARGET_NAME)"; 650 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Picpay.app/Picpay"; 651 | }; 652 | name = Release; 653 | }; 654 | 13B07F941A680F5B00A75B9A /* Debug */ = { 655 | isa = XCBuildConfiguration; 656 | baseConfigurationReference = F3E913972B31574447799D3B /* Pods-Picpay.debug.xcconfig */; 657 | buildSettings = { 658 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 659 | CLANG_ENABLE_MODULES = YES; 660 | CURRENT_PROJECT_VERSION = 1; 661 | ENABLE_BITCODE = NO; 662 | INFOPLIST_FILE = Picpay/Info.plist; 663 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 664 | OTHER_LDFLAGS = ( 665 | "$(inherited)", 666 | "-ObjC", 667 | "-lc++", 668 | ); 669 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 670 | PRODUCT_NAME = Picpay; 671 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 672 | SWIFT_VERSION = 5.0; 673 | VERSIONING_SYSTEM = "apple-generic"; 674 | }; 675 | name = Debug; 676 | }; 677 | 13B07F951A680F5B00A75B9A /* Release */ = { 678 | isa = XCBuildConfiguration; 679 | baseConfigurationReference = A73D6623F5213E78782B8867 /* Pods-Picpay.release.xcconfig */; 680 | buildSettings = { 681 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 682 | CLANG_ENABLE_MODULES = YES; 683 | CURRENT_PROJECT_VERSION = 1; 684 | INFOPLIST_FILE = Picpay/Info.plist; 685 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 686 | OTHER_LDFLAGS = ( 687 | "$(inherited)", 688 | "-ObjC", 689 | "-lc++", 690 | ); 691 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 692 | PRODUCT_NAME = Picpay; 693 | SWIFT_VERSION = 5.0; 694 | VERSIONING_SYSTEM = "apple-generic"; 695 | }; 696 | name = Release; 697 | }; 698 | 2D02E4971E0B4A5E006451C7 /* Debug */ = { 699 | isa = XCBuildConfiguration; 700 | buildSettings = { 701 | ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; 702 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 703 | CLANG_ANALYZER_NONNULL = YES; 704 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 705 | CLANG_WARN_INFINITE_RECURSION = YES; 706 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 707 | DEBUG_INFORMATION_FORMAT = dwarf; 708 | ENABLE_TESTABILITY = YES; 709 | GCC_NO_COMMON_BLOCKS = YES; 710 | INFOPLIST_FILE = "Picpay-tvOS/Info.plist"; 711 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 712 | OTHER_LDFLAGS = ( 713 | "$(inherited)", 714 | "-ObjC", 715 | "-lc++", 716 | ); 717 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.Picpay-tvOS"; 718 | PRODUCT_NAME = "$(TARGET_NAME)"; 719 | SDKROOT = appletvos; 720 | TARGETED_DEVICE_FAMILY = 3; 721 | TVOS_DEPLOYMENT_TARGET = 10.0; 722 | }; 723 | name = Debug; 724 | }; 725 | 2D02E4981E0B4A5E006451C7 /* Release */ = { 726 | isa = XCBuildConfiguration; 727 | buildSettings = { 728 | ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; 729 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 730 | CLANG_ANALYZER_NONNULL = YES; 731 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 732 | CLANG_WARN_INFINITE_RECURSION = YES; 733 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 734 | COPY_PHASE_STRIP = NO; 735 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 736 | GCC_NO_COMMON_BLOCKS = YES; 737 | INFOPLIST_FILE = "Picpay-tvOS/Info.plist"; 738 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 739 | OTHER_LDFLAGS = ( 740 | "$(inherited)", 741 | "-ObjC", 742 | "-lc++", 743 | ); 744 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.Picpay-tvOS"; 745 | PRODUCT_NAME = "$(TARGET_NAME)"; 746 | SDKROOT = appletvos; 747 | TARGETED_DEVICE_FAMILY = 3; 748 | TVOS_DEPLOYMENT_TARGET = 10.0; 749 | }; 750 | name = Release; 751 | }; 752 | 2D02E4991E0B4A5E006451C7 /* Debug */ = { 753 | isa = XCBuildConfiguration; 754 | buildSettings = { 755 | BUNDLE_LOADER = "$(TEST_HOST)"; 756 | CLANG_ANALYZER_NONNULL = YES; 757 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 758 | CLANG_WARN_INFINITE_RECURSION = YES; 759 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 760 | DEBUG_INFORMATION_FORMAT = dwarf; 761 | ENABLE_TESTABILITY = YES; 762 | GCC_NO_COMMON_BLOCKS = YES; 763 | INFOPLIST_FILE = "Picpay-tvOSTests/Info.plist"; 764 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 765 | OTHER_LDFLAGS = ( 766 | "$(inherited)", 767 | "-ObjC", 768 | "-lc++", 769 | ); 770 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.Picpay-tvOSTests"; 771 | PRODUCT_NAME = "$(TARGET_NAME)"; 772 | SDKROOT = appletvos; 773 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Picpay-tvOS.app/Picpay-tvOS"; 774 | TVOS_DEPLOYMENT_TARGET = 10.1; 775 | }; 776 | name = Debug; 777 | }; 778 | 2D02E49A1E0B4A5E006451C7 /* Release */ = { 779 | isa = XCBuildConfiguration; 780 | buildSettings = { 781 | BUNDLE_LOADER = "$(TEST_HOST)"; 782 | CLANG_ANALYZER_NONNULL = YES; 783 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 784 | CLANG_WARN_INFINITE_RECURSION = YES; 785 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 786 | COPY_PHASE_STRIP = NO; 787 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 788 | GCC_NO_COMMON_BLOCKS = YES; 789 | INFOPLIST_FILE = "Picpay-tvOSTests/Info.plist"; 790 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 791 | OTHER_LDFLAGS = ( 792 | "$(inherited)", 793 | "-ObjC", 794 | "-lc++", 795 | ); 796 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.Picpay-tvOSTests"; 797 | PRODUCT_NAME = "$(TARGET_NAME)"; 798 | SDKROOT = appletvos; 799 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Picpay-tvOS.app/Picpay-tvOS"; 800 | TVOS_DEPLOYMENT_TARGET = 10.1; 801 | }; 802 | name = Release; 803 | }; 804 | 83CBBA201A601CBA00E9B192 /* Debug */ = { 805 | isa = XCBuildConfiguration; 806 | buildSettings = { 807 | ALWAYS_SEARCH_USER_PATHS = NO; 808 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 809 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 810 | CLANG_CXX_LIBRARY = "libc++"; 811 | CLANG_ENABLE_MODULES = YES; 812 | CLANG_ENABLE_OBJC_ARC = YES; 813 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 814 | CLANG_WARN_BOOL_CONVERSION = YES; 815 | CLANG_WARN_COMMA = YES; 816 | CLANG_WARN_CONSTANT_CONVERSION = YES; 817 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 818 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 819 | CLANG_WARN_EMPTY_BODY = YES; 820 | CLANG_WARN_ENUM_CONVERSION = YES; 821 | CLANG_WARN_INFINITE_RECURSION = YES; 822 | CLANG_WARN_INT_CONVERSION = YES; 823 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 824 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 825 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 826 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 827 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 828 | CLANG_WARN_STRICT_PROTOTYPES = YES; 829 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 830 | CLANG_WARN_UNREACHABLE_CODE = YES; 831 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 832 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 833 | COPY_PHASE_STRIP = NO; 834 | ENABLE_STRICT_OBJC_MSGSEND = YES; 835 | ENABLE_TESTABILITY = YES; 836 | GCC_C_LANGUAGE_STANDARD = gnu99; 837 | GCC_DYNAMIC_NO_PIC = NO; 838 | GCC_NO_COMMON_BLOCKS = YES; 839 | GCC_OPTIMIZATION_LEVEL = 0; 840 | GCC_PREPROCESSOR_DEFINITIONS = ( 841 | "DEBUG=1", 842 | "$(inherited)", 843 | ); 844 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 845 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 846 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 847 | GCC_WARN_UNDECLARED_SELECTOR = YES; 848 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 849 | GCC_WARN_UNUSED_FUNCTION = YES; 850 | GCC_WARN_UNUSED_VARIABLE = YES; 851 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 852 | LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; 853 | LIBRARY_SEARCH_PATHS = ( 854 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", 855 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)\"", 856 | "\"$(inherited)\"", 857 | ); 858 | MTL_ENABLE_DEBUG_INFO = YES; 859 | ONLY_ACTIVE_ARCH = YES; 860 | SDKROOT = iphoneos; 861 | }; 862 | name = Debug; 863 | }; 864 | 83CBBA211A601CBA00E9B192 /* Release */ = { 865 | isa = XCBuildConfiguration; 866 | buildSettings = { 867 | ALWAYS_SEARCH_USER_PATHS = NO; 868 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 869 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 870 | CLANG_CXX_LIBRARY = "libc++"; 871 | CLANG_ENABLE_MODULES = YES; 872 | CLANG_ENABLE_OBJC_ARC = YES; 873 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 874 | CLANG_WARN_BOOL_CONVERSION = YES; 875 | CLANG_WARN_COMMA = YES; 876 | CLANG_WARN_CONSTANT_CONVERSION = YES; 877 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 878 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 879 | CLANG_WARN_EMPTY_BODY = YES; 880 | CLANG_WARN_ENUM_CONVERSION = YES; 881 | CLANG_WARN_INFINITE_RECURSION = YES; 882 | CLANG_WARN_INT_CONVERSION = YES; 883 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 884 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 885 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 886 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 887 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 888 | CLANG_WARN_STRICT_PROTOTYPES = YES; 889 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 890 | CLANG_WARN_UNREACHABLE_CODE = YES; 891 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 892 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 893 | COPY_PHASE_STRIP = YES; 894 | ENABLE_NS_ASSERTIONS = NO; 895 | ENABLE_STRICT_OBJC_MSGSEND = YES; 896 | GCC_C_LANGUAGE_STANDARD = gnu99; 897 | GCC_NO_COMMON_BLOCKS = YES; 898 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 899 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 900 | GCC_WARN_UNDECLARED_SELECTOR = YES; 901 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 902 | GCC_WARN_UNUSED_FUNCTION = YES; 903 | GCC_WARN_UNUSED_VARIABLE = YES; 904 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 905 | LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; 906 | LIBRARY_SEARCH_PATHS = ( 907 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", 908 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)\"", 909 | "\"$(inherited)\"", 910 | ); 911 | MTL_ENABLE_DEBUG_INFO = NO; 912 | SDKROOT = iphoneos; 913 | VALIDATE_PRODUCT = YES; 914 | }; 915 | name = Release; 916 | }; 917 | /* End XCBuildConfiguration section */ 918 | 919 | /* Begin XCConfigurationList section */ 920 | 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "PicpayTests" */ = { 921 | isa = XCConfigurationList; 922 | buildConfigurations = ( 923 | 00E356F61AD99517003FC87E /* Debug */, 924 | 00E356F71AD99517003FC87E /* Release */, 925 | ); 926 | defaultConfigurationIsVisible = 0; 927 | defaultConfigurationName = Release; 928 | }; 929 | 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Picpay" */ = { 930 | isa = XCConfigurationList; 931 | buildConfigurations = ( 932 | 13B07F941A680F5B00A75B9A /* Debug */, 933 | 13B07F951A680F5B00A75B9A /* Release */, 934 | ); 935 | defaultConfigurationIsVisible = 0; 936 | defaultConfigurationName = Release; 937 | }; 938 | 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "Picpay-tvOS" */ = { 939 | isa = XCConfigurationList; 940 | buildConfigurations = ( 941 | 2D02E4971E0B4A5E006451C7 /* Debug */, 942 | 2D02E4981E0B4A5E006451C7 /* Release */, 943 | ); 944 | defaultConfigurationIsVisible = 0; 945 | defaultConfigurationName = Release; 946 | }; 947 | 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "Picpay-tvOSTests" */ = { 948 | isa = XCConfigurationList; 949 | buildConfigurations = ( 950 | 2D02E4991E0B4A5E006451C7 /* Debug */, 951 | 2D02E49A1E0B4A5E006451C7 /* Release */, 952 | ); 953 | defaultConfigurationIsVisible = 0; 954 | defaultConfigurationName = Release; 955 | }; 956 | 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "Picpay" */ = { 957 | isa = XCConfigurationList; 958 | buildConfigurations = ( 959 | 83CBBA201A601CBA00E9B192 /* Debug */, 960 | 83CBBA211A601CBA00E9B192 /* Release */, 961 | ); 962 | defaultConfigurationIsVisible = 0; 963 | defaultConfigurationName = Release; 964 | }; 965 | /* End XCConfigurationList section */ 966 | }; 967 | rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; 968 | } 969 | --------------------------------------------------------------------------------