├── .watchmanconfig ├── jest.config.js ├── .bundle └── config ├── app.json ├── .eslintrc.js ├── tsconfig.json ├── assets └── screenshot.png ├── 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 │ │ │ │ └── drawable │ │ │ │ │ └── rn_edit_text_material.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── marknotes │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── MainApplication.kt │ │ │ └── AndroidManifest.xml │ │ └── debug │ │ │ └── AndroidManifest.xml │ ├── proguard-rules.pro │ └── build.gradle ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── settings.gradle ├── build.gradle ├── gradle.properties ├── gradlew.bat └── gradlew ├── ios ├── Marknotes │ ├── Images.xcassets │ │ ├── Contents.json │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── AppDelegate.h │ ├── main.m │ ├── AppDelegate.mm │ ├── Info.plist │ └── LaunchScreen.storyboard ├── Marknotes.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── .xcode.env ├── MarknotesTests │ ├── Info.plist │ └── MarknotesTests.m ├── Podfile ├── Marknotes.xcodeproj │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Marknotes.xcscheme │ └── project.pbxproj └── Podfile.lock ├── babel.config.js ├── .prettierrc.js ├── index.js ├── metro.config.js ├── Gemfile ├── __tests__ └── App.test.tsx ├── README.md ├── patches ├── react-native-reanimated+3.7.0.patch └── @expensify+react-native-live-markdown+0.1.5.patch ├── .gitignore ├── package.json └── App.tsx /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: 'react-native', 3 | }; 4 | -------------------------------------------------------------------------------- /.bundle/config: -------------------------------------------------------------------------------- 1 | BUNDLE_PATH: "vendor/bundle" 2 | BUNDLE_FORCE_RUBY_PLATFORM: 1 3 | -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Marknotes", 3 | "displayName": "Marknotes" 4 | } 5 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | extends: '@react-native', 4 | }; 5 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@react-native/typescript-config/tsconfig.json" 3 | } 4 | -------------------------------------------------------------------------------- /assets/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomekzaw/Marknotes/HEAD/assets/screenshot.png -------------------------------------------------------------------------------- /android/app/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomekzaw/Marknotes/HEAD/android/app/debug.keystore -------------------------------------------------------------------------------- /android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Marknotes 3 | 4 | -------------------------------------------------------------------------------- /ios/Marknotes/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomekzaw/Marknotes/HEAD/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ['module:@react-native/babel-preset'], 3 | plugins: ['react-native-reanimated/plugin'], 4 | }; 5 | -------------------------------------------------------------------------------- /ios/Marknotes/AppDelegate.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | @interface AppDelegate : RCTAppDelegate 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/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/tomekzaw/Marknotes/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | arrowParens: 'avoid', 3 | bracketSameLine: true, 4 | bracketSpacing: false, 5 | singleQuote: true, 6 | trailingComma: 'all', 7 | }; 8 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import {AppRegistry} from 'react-native'; 6 | import App from './App'; 7 | import {name as appName} from './app.json'; 8 | 9 | AppRegistry.registerComponent(appName, () => App); 10 | -------------------------------------------------------------------------------- /ios/Marknotes/main.m: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "AppDelegate.h" 4 | 5 | int main(int argc, char *argv[]) 6 | { 7 | @autoreleasepool { 8 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'Marknotes' 2 | apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) 3 | include ':app' 4 | includeBuild('../node_modules/@react-native/gradle-plugin') 5 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /ios/Marknotes.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ios/Marknotes.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /metro.config.js: -------------------------------------------------------------------------------- 1 | const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config'); 2 | 3 | /** 4 | * Metro configuration 5 | * https://facebook.github.io/metro/docs/configuration 6 | * 7 | * @type {import('metro-config').MetroConfig} 8 | */ 9 | const config = {}; 10 | 11 | module.exports = mergeConfig(getDefaultConfig(__dirname), config); 12 | -------------------------------------------------------------------------------- /android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version 4 | ruby ">= 2.6.10" 5 | 6 | # Cocoapods 1.15 introduced a bug which break the build. We will remove the upper 7 | # bound in the template on Cocoapods with next React Native release. 8 | gem 'cocoapods', '>= 1.13', '< 1.15' 9 | gem 'activesupport', '>= 6.1.7.5', '< 7.1.0' 10 | -------------------------------------------------------------------------------- /__tests__/App.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @format 3 | */ 4 | 5 | import 'react-native'; 6 | import React from 'react'; 7 | import App from '../App'; 8 | 9 | // Note: import explicitly to use the types shipped with jest. 10 | import {it} from '@jest/globals'; 11 | 12 | // Note: test renderer must be required after react-native. 13 | import renderer from 'react-test-renderer'; 14 | 15 | it('renders correctly', () => { 16 | renderer.create(); 17 | }); 18 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Marknotes 2 | 3 | - Markdown text input from [@expensify/react-native-live-markdown](https://github.com/Expensify/react-native-live-markdown) 4 | - Shared Element Transitions from [react-native-reanimated](https://github.com/software-mansion/react-native-reanimated) 5 | - Pan gesture from [react-native-gesture-handler](https://github.com/software-mansion/react-native-gesture-handler) 6 | - Masonry layout from [@Shopify/flash-list](https://github.com/Shopify/flash-list) 7 | 8 | 9 | -------------------------------------------------------------------------------- /ios/.xcode.env: -------------------------------------------------------------------------------- 1 | # This `.xcode.env` file is versioned and is used to source the environment 2 | # used when running script phases inside Xcode. 3 | # To customize your local environment, you can create an `.xcode.env.local` 4 | # file that is not versioned. 5 | 6 | # NODE_BINARY variable contains the PATH to the node executable. 7 | # 8 | # Customize the NODE_BINARY variable here. 9 | # For example, to use nvm with brew, add the following line 10 | # . "$(brew --prefix nvm)/nvm.sh" --no-use 11 | export NODE_BINARY=$(command -v node) 12 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | buildscript { 2 | ext { 3 | buildToolsVersion = "34.0.0" 4 | minSdkVersion = 21 5 | compileSdkVersion = 34 6 | targetSdkVersion = 34 7 | ndkVersion = "25.1.8937393" 8 | kotlinVersion = "1.8.0" 9 | } 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | dependencies { 15 | classpath("com.android.tools.build:gradle") 16 | classpath("com.facebook.react:react-native-gradle-plugin") 17 | classpath("org.jetbrains.kotlin:kotlin-gradle-plugin") 18 | } 19 | } 20 | 21 | apply plugin: "com.facebook.react.rootproject" 22 | -------------------------------------------------------------------------------- /ios/MarknotesTests/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/Marknotes/AppDelegate.mm: -------------------------------------------------------------------------------- 1 | #import "AppDelegate.h" 2 | 3 | #import 4 | 5 | @implementation AppDelegate 6 | 7 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 8 | { 9 | self.moduleName = @"Marknotes"; 10 | // You can add your custom initial props in the dictionary below. 11 | // They will be passed down to the ViewController used by React Native. 12 | self.initialProps = @{}; 13 | 14 | return [super application:application didFinishLaunchingWithOptions:launchOptions]; 15 | } 16 | 17 | - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge 18 | { 19 | return [self getBundleURL]; 20 | } 21 | 22 | - (NSURL *)getBundleURL 23 | { 24 | #if DEBUG 25 | return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"]; 26 | #else 27 | return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; 28 | #endif 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/marknotes/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.marknotes 2 | 3 | import com.facebook.react.ReactActivity 4 | import com.facebook.react.ReactActivityDelegate 5 | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled 6 | import com.facebook.react.defaults.DefaultReactActivityDelegate 7 | 8 | class MainActivity : ReactActivity() { 9 | 10 | /** 11 | * Returns the name of the main component registered from JavaScript. This is used to schedule 12 | * rendering of the component. 13 | */ 14 | override fun getMainComponentName(): String = "Marknotes" 15 | 16 | /** 17 | * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate] 18 | * which allows you to enable New Architecture with a single boolean flags [fabricEnabled] 19 | */ 20 | override fun createReactActivityDelegate(): ReactActivityDelegate = 21 | DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled) 22 | } 23 | -------------------------------------------------------------------------------- /android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 12 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /ios/Marknotes/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "scale" : "2x", 6 | "size" : "20x20" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "scale" : "3x", 11 | "size" : "20x20" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "scale" : "2x", 16 | "size" : "29x29" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "scale" : "3x", 21 | "size" : "29x29" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "scale" : "2x", 26 | "size" : "40x40" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "scale" : "3x", 31 | "size" : "40x40" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "scale" : "2x", 36 | "size" : "60x60" 37 | }, 38 | { 39 | "idiom" : "iphone", 40 | "scale" : "3x", 41 | "size" : "60x60" 42 | }, 43 | { 44 | "idiom" : "ios-marketing", 45 | "scale" : "1x", 46 | "size" : "1024x1024" 47 | } 48 | ], 49 | "info" : { 50 | "author" : "xcode", 51 | "version" : 1 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /patches/react-native-reanimated+3.7.0.patch: -------------------------------------------------------------------------------- 1 | diff --git a/node_modules/react-native-reanimated/apple/LayoutReanimation/REASharedTransitionManager.m b/node_modules/react-native-reanimated/apple/LayoutReanimation/REASharedTransitionManager.m 2 | index 3fc52c9..0970e89 100644 3 | --- a/node_modules/react-native-reanimated/apple/LayoutReanimation/REASharedTransitionManager.m 4 | +++ b/node_modules/react-native-reanimated/apple/LayoutReanimation/REASharedTransitionManager.m 5 | @@ -213,13 +213,15 @@ - (NSArray *)sortViewsByTags:(NSArray *)views 6 | // find sibling for shared view 7 | NSNumber *siblingViewTag = _findPrecedingViewTagForTransition(sharedView.reactTag); 8 | REAUIView *siblingView = nil; 9 | + int count = 0; 10 | do { 11 | siblingView = [_animationManager viewForTag:siblingViewTag]; 12 | if (siblingView == nil) { 13 | [self clearAllSharedConfigsForViewTag:siblingViewTag]; 14 | siblingViewTag = _findPrecedingViewTagForTransition(sharedView.reactTag); 15 | } 16 | - } while (siblingView == nil && siblingViewTag != nil); 17 | + ++count; 18 | + } while (siblingView == nil && siblingViewTag != nil && count < 1024); 19 | 20 | if (siblingView == nil) { 21 | // the sibling of shared view doesn't exist yet 22 | -------------------------------------------------------------------------------- /.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 | ios/.xcode.env.local 24 | 25 | # Android/IntelliJ 26 | # 27 | build/ 28 | .idea 29 | .gradle 30 | local.properties 31 | *.iml 32 | *.hprof 33 | .cxx/ 34 | *.keystore 35 | !debug.keystore 36 | 37 | # node.js 38 | # 39 | node_modules/ 40 | npm-debug.log 41 | yarn-error.log 42 | 43 | # fastlane 44 | # 45 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 46 | # screenshots whenever they are needed. 47 | # For more information about the recommended setup visit: 48 | # https://docs.fastlane.tools/best-practices/source-control/ 49 | 50 | **/fastlane/report.xml 51 | **/fastlane/Preview.html 52 | **/fastlane/screenshots 53 | **/fastlane/test_output 54 | 55 | # Bundle artifact 56 | *.jsbundle 57 | 58 | # Ruby / CocoaPods 59 | /ios/Pods/ 60 | /vendor/bundle/ 61 | 62 | # Temporary files created by Metro to check the health of the file watcher 63 | .metro-health-check* 64 | 65 | # testing 66 | /coverage 67 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Marknotes", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "android": "react-native run-android", 7 | "ios": "react-native run-ios", 8 | "lint": "eslint .", 9 | "start": "react-native start", 10 | "test": "jest", 11 | "postinstall": "patch-package" 12 | }, 13 | "dependencies": { 14 | "@expensify/react-native-live-markdown": "^0.1.5", 15 | "@react-navigation/native": "^6.1.10", 16 | "@react-navigation/native-stack": "^6.9.18", 17 | "@shopify/flash-list": "^1.6.3", 18 | "patch-package": "^8.0.0", 19 | "postinstall-postinstall": "^2.1.0", 20 | "react": "18.2.0", 21 | "react-native": "0.73.4", 22 | "react-native-gesture-handler": "^2.15.0", 23 | "react-native-reanimated": "^3.7.0", 24 | "react-native-safe-area-context": "^4.9.0", 25 | "react-native-screens": "^3.29.0" 26 | }, 27 | "devDependencies": { 28 | "@babel/core": "^7.20.0", 29 | "@babel/preset-env": "^7.20.0", 30 | "@babel/runtime": "^7.20.0", 31 | "@react-native/babel-preset": "0.73.21", 32 | "@react-native/eslint-config": "0.73.2", 33 | "@react-native/metro-config": "0.73.5", 34 | "@react-native/typescript-config": "0.73.1", 35 | "@types/react": "^18.2.6", 36 | "@types/react-test-renderer": "^18.0.0", 37 | "babel-jest": "^29.6.3", 38 | "eslint": "^8.19.0", 39 | "jest": "^29.6.3", 40 | "prettier": "2.8.8", 41 | "react-test-renderer": "18.2.0", 42 | "typescript": "5.0.4" 43 | }, 44 | "engines": { 45 | "node": ">=18" 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /patches/@expensify+react-native-live-markdown+0.1.5.patch: -------------------------------------------------------------------------------- 1 | diff --git a/node_modules/@expensify/react-native-live-markdown/ios/MarkdownTextInputDecoratorView.mm b/node_modules/@expensify/react-native-live-markdown/ios/MarkdownTextInputDecoratorView.mm 2 | index f94f5a9..ef87ba6 100644 3 | --- a/node_modules/@expensify/react-native-live-markdown/ios/MarkdownTextInputDecoratorView.mm 4 | +++ b/node_modules/@expensify/react-native-live-markdown/ios/MarkdownTextInputDecoratorView.mm 5 | @@ -53,7 +53,9 @@ - (void)didMoveToWindow { 6 | _textInput = (RCTTextInputComponentView *)view; 7 | UIView *backedTextInputView = [_textInput valueForKey:@"_backedTextInputView"]; 8 | #else 9 | - react_native_assert([view isKindOfClass:[RCTBaseTextInputView class]] && "Previous sibling component is not an instance of RCTBaseTextInputView."); 10 | + if (![view isKindOfClass:[RCTBaseTextInputView class]]) { 11 | + return; 12 | + } 13 | _textInput = (RCTBaseTextInputView *)view; 14 | UIView *backedTextInputView = _textInput.backedTextInputView; 15 | #endif /* RCT_NEW_ARCH_ENABLED */ 16 | @@ -63,6 +65,8 @@ - (void)didMoveToWindow { 17 | [_markdownUtils setMarkdownStyle:_markdownStyle]; 18 | 19 | [_textInput setMarkdownUtils:_markdownUtils]; 20 | + _textInput.attributedText = _textInput.attributedText; 21 | + 22 | if ([backedTextInputView isKindOfClass:[RCTUITextField class]]) { 23 | RCTUITextField *textField = (RCTUITextField *)backedTextInputView; 24 | _adapter = [textField valueForKey:@"textInputDelegateAdapter"]; 25 | -------------------------------------------------------------------------------- /ios/Marknotes/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | Marknotes 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 | $(MARKETING_VERSION) 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | $(CURRENT_PROJECT_VERSION) 25 | LSRequiresIPhoneOS 26 | 27 | NSAppTransportSecurity 28 | 29 | 30 | NSAllowsArbitraryLoads 31 | 32 | NSAllowsLocalNetworking 33 | 34 | 35 | NSLocationWhenInUseUsageDescription 36 | 37 | UILaunchStoryboardName 38 | LaunchScreen 39 | UIRequiredDeviceCapabilities 40 | 41 | armv7 42 | 43 | UISupportedInterfaceOrientations 44 | 45 | UIInterfaceOrientationPortrait 46 | UIInterfaceOrientationLandscapeLeft 47 | UIInterfaceOrientationLandscapeRight 48 | 49 | UIViewControllerBasedStatusBarAppearance 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/marknotes/MainApplication.kt: -------------------------------------------------------------------------------- 1 | package com.marknotes 2 | 3 | import android.app.Application 4 | import com.facebook.react.PackageList 5 | import com.facebook.react.ReactApplication 6 | import com.facebook.react.ReactHost 7 | import com.facebook.react.ReactNativeHost 8 | import com.facebook.react.ReactPackage 9 | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load 10 | import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost 11 | import com.facebook.react.defaults.DefaultReactNativeHost 12 | import com.facebook.react.flipper.ReactNativeFlipper 13 | import com.facebook.soloader.SoLoader 14 | 15 | class MainApplication : Application(), ReactApplication { 16 | 17 | override val reactNativeHost: ReactNativeHost = 18 | object : DefaultReactNativeHost(this) { 19 | override fun getPackages(): List = 20 | PackageList(this).packages.apply { 21 | // Packages that cannot be autolinked yet can be added manually here, for example: 22 | // add(MyReactNativePackage()) 23 | } 24 | 25 | override fun getJSMainModuleName(): String = "index" 26 | 27 | override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG 28 | 29 | override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED 30 | override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED 31 | } 32 | 33 | override val reactHost: ReactHost 34 | get() = getDefaultReactHost(this.applicationContext, reactNativeHost) 35 | 36 | override fun onCreate() { 37 | super.onCreate() 38 | SoLoader.init(this, false) 39 | if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { 40 | // If you opted-in for the New Architecture, we load the native entry point for this app. 41 | load() 42 | } 43 | ReactNativeFlipper.initializeFlipper(this, reactNativeHost.reactInstanceManager) 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /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: -Xmx512m -XX:MaxMetaspaceSize=256m 13 | org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m 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 | # Use this property to specify which architecture you want to build. 28 | # You can also override it from the CLI using 29 | # ./gradlew -PreactNativeArchitectures=x86_64 30 | reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 31 | 32 | # Use this property to enable support to the new architecture. 33 | # This will allow you to use TurboModules and the Fabric render in 34 | # your application. You should enable this flag either if you want 35 | # to write custom TurboModules/Fabric components OR use libraries that 36 | # are providing them. 37 | newArchEnabled=false 38 | 39 | # Use this property to enable or disable the Hermes JS engine. 40 | # If set to false, you will be using JSC instead. 41 | hermesEnabled=true 42 | -------------------------------------------------------------------------------- /ios/Podfile: -------------------------------------------------------------------------------- 1 | # Resolve react_native_pods.rb with node to allow for hoisting 2 | require Pod::Executable.execute_command('node', ['-p', 3 | 'require.resolve( 4 | "react-native/scripts/react_native_pods.rb", 5 | {paths: [process.argv[1]]}, 6 | )', __dir__]).strip 7 | 8 | platform :ios, min_ios_version_supported 9 | prepare_react_native_project! 10 | 11 | # If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set. 12 | # because `react-native-flipper` depends on (FlipperKit,...) that will be excluded 13 | # 14 | # To fix this you can also exclude `react-native-flipper` using a `react-native.config.js` 15 | # ```js 16 | # module.exports = { 17 | # dependencies: { 18 | # ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}), 19 | # ``` 20 | flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled 21 | 22 | linkage = ENV['USE_FRAMEWORKS'] 23 | if linkage != nil 24 | Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green 25 | use_frameworks! :linkage => linkage.to_sym 26 | end 27 | 28 | target 'Marknotes' do 29 | config = use_native_modules! 30 | 31 | use_react_native!( 32 | :path => config[:reactNativePath], 33 | # Enables Flipper. 34 | # 35 | # Note that if you have use_frameworks! enabled, Flipper will not work and 36 | # you should disable the next line. 37 | :flipper_configuration => flipper_config, 38 | # An absolute path to your application root. 39 | :app_path => "#{Pod::Config.instance.installation_root}/.." 40 | ) 41 | 42 | target 'MarknotesTests' do 43 | inherit! :complete 44 | # Pods for testing 45 | end 46 | 47 | post_install do |installer| 48 | # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202 49 | react_native_post_install( 50 | installer, 51 | config[:reactNativePath], 52 | :mac_catalyst_enabled => false 53 | ) 54 | end 55 | end 56 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable/rn_edit_text_material.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 21 | 22 | 23 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /ios/MarknotesTests/MarknotesTests.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 MarknotesTests : XCTestCase 11 | 12 | @end 13 | 14 | @implementation MarknotesTests 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( 38 | ^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { 39 | if (level >= RCTLogLevelError) { 40 | redboxError = message; 41 | } 42 | }); 43 | #endif 44 | 45 | while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { 46 | [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 47 | [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 48 | 49 | foundElement = [self findSubviewInView:vc.view 50 | matching:^BOOL(UIView *view) { 51 | if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { 52 | return YES; 53 | } 54 | return NO; 55 | }]; 56 | } 57 | 58 | #ifdef DEBUG 59 | RCTSetLogFunction(RCTDefaultLogFunction); 60 | #endif 61 | 62 | XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); 63 | XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); 64 | } 65 | 66 | @end 67 | -------------------------------------------------------------------------------- /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 | @rem This is normally unused 30 | set APP_BASE_NAME=%~n0 31 | set APP_HOME=%DIRNAME% 32 | 33 | @rem Resolve any "." and ".." in APP_HOME to make it shorter. 34 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi 35 | 36 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 37 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" 38 | 39 | @rem Find java.exe 40 | if defined JAVA_HOME goto findJavaFromJavaHome 41 | 42 | set JAVA_EXE=java.exe 43 | %JAVA_EXE% -version >NUL 2>&1 44 | if %ERRORLEVEL% equ 0 goto execute 45 | 46 | echo. 47 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 48 | echo. 49 | echo Please set the JAVA_HOME variable in your environment to match the 50 | echo location of your Java installation. 51 | 52 | goto fail 53 | 54 | :findJavaFromJavaHome 55 | set JAVA_HOME=%JAVA_HOME:"=% 56 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 57 | 58 | if exist "%JAVA_EXE%" goto execute 59 | 60 | echo. 61 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 62 | echo. 63 | echo Please set the JAVA_HOME variable in your environment to match the 64 | echo location of your Java installation. 65 | 66 | goto fail 67 | 68 | :execute 69 | @rem Setup the command line 70 | 71 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 72 | 73 | 74 | @rem Execute Gradle 75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* 76 | 77 | :end 78 | @rem End local scope for the variables with windows NT shell 79 | if %ERRORLEVEL% equ 0 goto mainEnd 80 | 81 | :fail 82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 83 | rem the _cmd.exe /c_ return code! 84 | set EXIT_CODE=%ERRORLEVEL% 85 | if %EXIT_CODE% equ 0 set EXIT_CODE=1 86 | if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% 87 | exit /b %EXIT_CODE% 88 | 89 | :mainEnd 90 | if "%OS%"=="Windows_NT" endlocal 91 | 92 | :omega 93 | -------------------------------------------------------------------------------- /ios/Marknotes.xcodeproj/xcshareddata/xcschemes/Marknotes.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/Marknotes/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 24 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /android/app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: "com.android.application" 2 | apply plugin: "org.jetbrains.kotlin.android" 3 | apply plugin: "com.facebook.react" 4 | 5 | /** 6 | * This is the configuration block to customize your React Native Android app. 7 | * By default you don't need to apply any configuration, just uncomment the lines you need. 8 | */ 9 | react { 10 | /* Folders */ 11 | // The root of your project, i.e. where "package.json" lives. Default is '..' 12 | // root = file("../") 13 | // The folder where the react-native NPM package is. Default is ../node_modules/react-native 14 | // reactNativeDir = file("../node_modules/react-native") 15 | // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen 16 | // codegenDir = file("../node_modules/@react-native/codegen") 17 | // The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js 18 | // cliFile = file("../node_modules/react-native/cli.js") 19 | 20 | /* Variants */ 21 | // The list of variants to that are debuggable. For those we're going to 22 | // skip the bundling of the JS bundle and the assets. By default is just 'debug'. 23 | // If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants. 24 | // debuggableVariants = ["liteDebug", "prodDebug"] 25 | 26 | /* Bundling */ 27 | // A list containing the node command and its flags. Default is just 'node'. 28 | // nodeExecutableAndArgs = ["node"] 29 | // 30 | // The command to run when bundling. By default is 'bundle' 31 | // bundleCommand = "ram-bundle" 32 | // 33 | // The path to the CLI configuration file. Default is empty. 34 | // bundleConfig = file(../rn-cli.config.js) 35 | // 36 | // The name of the generated asset file containing your JS bundle 37 | // bundleAssetName = "MyApplication.android.bundle" 38 | // 39 | // The entry file for bundle generation. Default is 'index.android.js' or 'index.js' 40 | // entryFile = file("../js/MyApplication.android.js") 41 | // 42 | // A list of extra flags to pass to the 'bundle' commands. 43 | // See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle 44 | // extraPackagerArgs = [] 45 | 46 | /* Hermes Commands */ 47 | // The hermes compiler command to run. By default it is 'hermesc' 48 | // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc" 49 | // 50 | // The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map" 51 | // hermesFlags = ["-O", "-output-source-map"] 52 | } 53 | 54 | /** 55 | * Set this to true to Run Proguard on Release builds to minify the Java bytecode. 56 | */ 57 | def enableProguardInReleaseBuilds = false 58 | 59 | /** 60 | * The preferred build flavor of JavaScriptCore (JSC) 61 | * 62 | * For example, to use the international variant, you can use: 63 | * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` 64 | * 65 | * The international variant includes ICU i18n library and necessary data 66 | * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that 67 | * give correct results when using with locales other than en-US. Note that 68 | * this variant is about 6MiB larger per architecture than default. 69 | */ 70 | def jscFlavor = 'org.webkit:android-jsc:+' 71 | 72 | android { 73 | ndkVersion rootProject.ext.ndkVersion 74 | buildToolsVersion rootProject.ext.buildToolsVersion 75 | compileSdk rootProject.ext.compileSdkVersion 76 | 77 | namespace "com.marknotes" 78 | defaultConfig { 79 | applicationId "com.marknotes" 80 | minSdkVersion rootProject.ext.minSdkVersion 81 | targetSdkVersion rootProject.ext.targetSdkVersion 82 | versionCode 1 83 | versionName "1.0" 84 | } 85 | signingConfigs { 86 | debug { 87 | storeFile file('debug.keystore') 88 | storePassword 'android' 89 | keyAlias 'androiddebugkey' 90 | keyPassword 'android' 91 | } 92 | } 93 | buildTypes { 94 | debug { 95 | signingConfig signingConfigs.debug 96 | } 97 | release { 98 | // Caution! In production, you need to generate your own keystore file. 99 | // see https://reactnative.dev/docs/signed-apk-android. 100 | signingConfig signingConfigs.debug 101 | minifyEnabled enableProguardInReleaseBuilds 102 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" 103 | } 104 | } 105 | } 106 | 107 | dependencies { 108 | // The version of react-native is set by the React Native Gradle Plugin 109 | implementation("com.facebook.react:react-android") 110 | implementation("com.facebook.react:flipper-integration") 111 | 112 | if (hermesEnabled.toBoolean()) { 113 | implementation("com.facebook.react:hermes-android") 114 | } else { 115 | implementation jscFlavor 116 | } 117 | } 118 | 119 | apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) 120 | -------------------------------------------------------------------------------- /App.tsx: -------------------------------------------------------------------------------- 1 | import * as React from 'react'; 2 | 3 | import {KeyboardAvoidingView, Pressable, StyleSheet} from 'react-native'; 4 | 5 | import Animated, { 6 | runOnJS, 7 | useAnimatedStyle, 8 | useSharedValue, 9 | withSpring, 10 | } from 'react-native-reanimated'; 11 | import {MarkdownTextInput} from '@expensify/react-native-live-markdown'; 12 | import {MasonryFlashList} from '@shopify/flash-list'; 13 | import type {NativeStackScreenProps} from '@react-navigation/native-stack'; 14 | import {NavigationContainer} from '@react-navigation/native'; 15 | import {createNativeStackNavigator} from '@react-navigation/native-stack'; 16 | import { 17 | Gesture, 18 | GestureDetector, 19 | GestureHandlerRootView, 20 | } from 'react-native-gesture-handler'; 21 | 22 | const AnimatedMarkdownTextInput = 23 | Animated.createAnimatedComponent(MarkdownTextInput); 24 | 25 | const MARKDOWN_STYLE = { 26 | h1: { 27 | fontSize: 20, 28 | }, 29 | pre: { 30 | backgroundColor: 'transparent', 31 | }, 32 | code: { 33 | backgroundColor: 'transparent', 34 | }, 35 | blockquote: { 36 | borderColor: 'rgba(0,0,0,0.15)', 37 | borderWidth: 6, 38 | marginLeft: 0, 39 | paddingLeft: 8, 40 | }, 41 | mentionHere: { 42 | color: 'brown', 43 | backgroundColor: 'yellow', 44 | }, 45 | mentionUser: { 46 | color: 'dodgerblue', 47 | backgroundColor: 'lightblue', 48 | }, 49 | }; 50 | 51 | interface Note { 52 | tag: string; 53 | color: string; 54 | text: string; 55 | } 56 | 57 | const DEFAULT_NOTES: Note[] = [ 58 | { 59 | tag: 'note1', 60 | color: 'lightgreen', 61 | text: '# React Native Live Markdown\nhttps://github.com/Expensify/react-native-live-markdown\nDrop-in replacement for `` component', 62 | }, 63 | { 64 | tag: 'note2', 65 | color: '#ffd3fd', 66 | text: 'Made with 💖 at *Software Mansion* for *Expensify*', 67 | }, 68 | { 69 | tag: 'note6', 70 | color: 'white', 71 | text: '# Heading\n*Bold* _italic_ ~strikethrough~\n*_~nested~_*\n`inline code`\n> Blockquote', 72 | }, 73 | { 74 | tag: 'note4', 75 | color: 'lightskyblue', 76 | text: '```\nyarn add @expensify/react-native-live-markdown\n```', 77 | }, 78 | { 79 | tag: 'note5', 80 | color: '#ffac9d', 81 | text: 'this is just a `` with some magic', 82 | }, 83 | { 84 | tag: 'note3', 85 | color: 'lemonchiffon', 86 | text: '> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque iaculis est a cursus pellentesque. Phasellus id massa sit amet lacus pellentesque maximus molestie in diam. Morbi commodo pellentesque dignissim. Morbi augue nunc, finibus quis dapibus tincidunt, vulputate vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Sed laoreet feugiat enim, sed condimentum lorem varius non. Mauris quis neque venenatis, mattis massa vel, feugiat felis. Phasellus id augue cursus ex vehicula porttitor. ', 87 | }, 88 | { 89 | tag: 'note7', 90 | color: 'paleturquoise', 91 | text: '🌐 Supports Android, iOS & web', 92 | }, 93 | { 94 | tag: 'note8', 95 | color: 'lightgray', 96 | text: '⌨️ Live synchronous formatting on every keystroke', 97 | }, 98 | { 99 | tag: 'note9', 100 | color: 'lavender', 101 | text: '⚡ Fully native experience:\n• selection\n• spellcheck\n• autocomplete', 102 | }, 103 | { 104 | tag: 'note10', 105 | color: 'wheat', 106 | text: '🎨 Customizable styles', 107 | }, 108 | ]; 109 | 110 | interface SmallNoteProps { 111 | note: Note; 112 | onPress: () => void; 113 | } 114 | 115 | function SmallNote({note, onPress}: SmallNoteProps) { 116 | return ( 117 | 118 | 128 | 129 | ); 130 | } 131 | 132 | type ParamList = { 133 | HomeScreen?: object; 134 | NoteScreen: {tag: string}; 135 | }; 136 | 137 | const Stack = createNativeStackNavigator(); 138 | 139 | function HomeScreen({ 140 | navigation, 141 | }: NativeStackScreenProps) { 142 | return ( 143 | ( 148 | navigation.navigate('NoteScreen', {tag: item.tag})} 151 | /> 152 | )} 153 | estimatedItemSize={150} 154 | /> 155 | ); 156 | } 157 | 158 | function NoteScreen({ 159 | route, 160 | navigation, 161 | }: NativeStackScreenProps) { 162 | const tag = route.params.tag; 163 | 164 | const note = DEFAULT_NOTES.find(item => item.tag === tag); 165 | 166 | const [text, setText] = React.useState(note.text); 167 | 168 | const goBack = React.useCallback(() => { 169 | navigation.navigate('HomeScreen'); 170 | }, [navigation]); 171 | 172 | const offset = useSharedValue({x: 0, y: 0}); 173 | 174 | const translation = useAnimatedStyle(() => { 175 | return { 176 | transform: [ 177 | {translateX: offset.value.x * 0.3}, 178 | {translateY: offset.value.y * 0.3}, 179 | ], 180 | }; 181 | }); 182 | 183 | const pan = Gesture.Pan() 184 | .manualActivation(true) 185 | .onChange(e => { 186 | 'worklet'; 187 | offset.value = { 188 | x: e.changeX + offset.value.x, 189 | y: e.changeY + offset.value.y, 190 | }; 191 | if (Math.abs(offset.value.x) > 150 || Math.abs(offset.value.y) > 250) { 192 | runOnJS(goBack)(); 193 | } 194 | }) 195 | .onFinalize(() => { 196 | 'worklet'; 197 | offset.value = withSpring({x: 0, y: 0}); 198 | }) 199 | .onTouchesMove((e, state) => { 200 | state.activate(); 201 | }); 202 | 203 | return ( 204 | 205 | 208 | {note && ( 209 | 210 | 211 | 224 | 225 | 226 | )} 227 | 228 | 229 | ); 230 | } 231 | 232 | export default function App() { 233 | return ( 234 | 235 | 236 | 240 | 245 | 250 | 251 | 252 | 253 | ); 254 | } 255 | 256 | const NOTES_GAP = 12; 257 | 258 | const styles = StyleSheet.create({ 259 | root: { 260 | flex: 1, 261 | }, 262 | contentContainer: { 263 | padding: NOTES_GAP / 2, 264 | }, 265 | keyboardAvoidingView: { 266 | flex: 1, 267 | alignItems: 'center', 268 | justifyContent: 'center', 269 | }, 270 | center: { 271 | flex: 1, 272 | alignItems: 'center', 273 | justifyContent: 'center', 274 | }, 275 | overlay: { 276 | flex: 1, 277 | width: '100%', 278 | height: '100%', 279 | position: 'absolute', 280 | backgroundColor: 'rgba(0,0,0,0.7)', 281 | }, 282 | note: { 283 | color: 'black', 284 | verticalAlign: 'top', 285 | fontSize: 16, 286 | borderRadius: 10, 287 | padding: 10, 288 | overflow: 'hidden', 289 | }, 290 | smallNote: { 291 | margin: NOTES_GAP / 2, 292 | maxHeight: 200, 293 | }, 294 | bigNote: { 295 | width: 300, 296 | minHeight: 300, 297 | maxHeight: 300, 298 | }, 299 | }); 300 | -------------------------------------------------------------------------------- /android/gradlew: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # 4 | # Copyright © 2015-2021 the original 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 POSIX generated by Gradle. 22 | # 23 | # Important for running: 24 | # 25 | # (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is 26 | # noncompliant, but you have some other compliant shell such as ksh or 27 | # bash, then to run this script, type that shell name before the whole 28 | # command line, like: 29 | # 30 | # ksh Gradle 31 | # 32 | # Busybox and similar reduced shells will NOT work, because this script 33 | # requires all of these POSIX shell features: 34 | # * functions; 35 | # * expansions «$var», «${var}», «${var:-default}», «${var+SET}», 36 | # «${var#prefix}», «${var%suffix}», and «$( cmd )»; 37 | # * compound commands having a testable exit status, especially «case»; 38 | # * various built-in commands including «command», «set», and «ulimit». 39 | # 40 | # Important for patching: 41 | # 42 | # (2) This script targets any POSIX shell, so it avoids extensions provided 43 | # by Bash, Ksh, etc; in particular arrays are avoided. 44 | # 45 | # The "traditional" practice of packing multiple parameters into a 46 | # space-separated string is a well documented source of bugs and security 47 | # problems, so this is (mostly) avoided, by progressively accumulating 48 | # options in "$@", and eventually passing that to Java. 49 | # 50 | # Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, 51 | # and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; 52 | # see the in-line comments for details. 53 | # 54 | # There are tweaks for specific operating systems such as AIX, CygWin, 55 | # Darwin, MinGW, and NonStop. 56 | # 57 | # (3) This script is generated from the Groovy template 58 | # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt 59 | # within the Gradle project. 60 | # 61 | # You can find Gradle at https://github.com/gradle/gradle/. 62 | # 63 | ############################################################################## 64 | 65 | # Attempt to set APP_HOME 66 | 67 | # Resolve links: $0 may be a link 68 | app_path=$0 69 | 70 | # Need this for daisy-chained symlinks. 71 | while 72 | APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path 73 | [ -h "$app_path" ] 74 | do 75 | ls=$( ls -ld "$app_path" ) 76 | link=${ls#*' -> '} 77 | case $link in #( 78 | /*) app_path=$link ;; #( 79 | *) app_path=$APP_HOME$link ;; 80 | esac 81 | done 82 | 83 | # This is normally unused 84 | # shellcheck disable=SC2034 85 | APP_BASE_NAME=${0##*/} 86 | # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) 87 | APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit 88 | 89 | # Use the maximum available, or set MAX_FD != -1 to use that value. 90 | MAX_FD=maximum 91 | 92 | warn () { 93 | echo "$*" 94 | } >&2 95 | 96 | die () { 97 | echo 98 | echo "$*" 99 | echo 100 | exit 1 101 | } >&2 102 | 103 | # OS specific support (must be 'true' or 'false'). 104 | cygwin=false 105 | msys=false 106 | darwin=false 107 | nonstop=false 108 | case "$( uname )" in #( 109 | CYGWIN* ) cygwin=true ;; #( 110 | Darwin* ) darwin=true ;; #( 111 | MSYS* | MINGW* ) msys=true ;; #( 112 | NONSTOP* ) nonstop=true ;; 113 | esac 114 | 115 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 116 | 117 | 118 | # Determine the Java command to use to start the JVM. 119 | if [ -n "$JAVA_HOME" ] ; then 120 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 121 | # IBM's JDK on AIX uses strange locations for the executables 122 | JAVACMD=$JAVA_HOME/jre/sh/java 123 | else 124 | JAVACMD=$JAVA_HOME/bin/java 125 | fi 126 | if [ ! -x "$JAVACMD" ] ; then 127 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 128 | 129 | Please set the JAVA_HOME variable in your environment to match the 130 | location of your Java installation." 131 | fi 132 | else 133 | JAVACMD=java 134 | if ! command -v java >/dev/null 2>&1 135 | then 136 | die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 137 | 138 | Please set the JAVA_HOME variable in your environment to match the 139 | location of your Java installation." 140 | fi 141 | fi 142 | 143 | # Increase the maximum file descriptors if we can. 144 | if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then 145 | case $MAX_FD in #( 146 | max*) 147 | # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. 148 | # shellcheck disable=SC3045 149 | MAX_FD=$( ulimit -H -n ) || 150 | warn "Could not query maximum file descriptor limit" 151 | esac 152 | case $MAX_FD in #( 153 | '' | soft) :;; #( 154 | *) 155 | # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. 156 | # shellcheck disable=SC3045 157 | ulimit -n "$MAX_FD" || 158 | warn "Could not set maximum file descriptor limit to $MAX_FD" 159 | esac 160 | fi 161 | 162 | # Collect all arguments for the java command, stacking in reverse order: 163 | # * args from the command line 164 | # * the main class name 165 | # * -classpath 166 | # * -D...appname settings 167 | # * --module-path (only if needed) 168 | # * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. 169 | 170 | # For Cygwin or MSYS, switch paths to Windows format before running java 171 | if "$cygwin" || "$msys" ; then 172 | APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) 173 | CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) 174 | 175 | JAVACMD=$( cygpath --unix "$JAVACMD" ) 176 | 177 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 178 | for arg do 179 | if 180 | case $arg in #( 181 | -*) false ;; # don't mess with options #( 182 | /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath 183 | [ -e "$t" ] ;; #( 184 | *) false ;; 185 | esac 186 | then 187 | arg=$( cygpath --path --ignore --mixed "$arg" ) 188 | fi 189 | # Roll the args list around exactly as many times as the number of 190 | # args, so each arg winds up back in the position where it started, but 191 | # possibly modified. 192 | # 193 | # NB: a `for` loop captures its iteration list before it begins, so 194 | # changing the positional parameters here affects neither the number of 195 | # iterations, nor the values presented in `arg`. 196 | shift # remove old arg 197 | set -- "$@" "$arg" # push replacement arg 198 | done 199 | fi 200 | 201 | 202 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 203 | DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' 204 | 205 | # Collect all arguments for the java command; 206 | # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of 207 | # shell script including quotes and variable substitutions, so put them in 208 | # double quotes to make sure that they get re-expanded; and 209 | # * put everything else in single quotes, so that it's not re-expanded. 210 | 211 | set -- \ 212 | "-Dorg.gradle.appname=$APP_BASE_NAME" \ 213 | -classpath "$CLASSPATH" \ 214 | org.gradle.wrapper.GradleWrapperMain \ 215 | "$@" 216 | 217 | # Stop when "xargs" is not available. 218 | if ! command -v xargs >/dev/null 2>&1 219 | then 220 | die "xargs is not available" 221 | fi 222 | 223 | # Use "xargs" to parse quoted args. 224 | # 225 | # With -n1 it outputs one arg per line, with the quotes and backslashes removed. 226 | # 227 | # In Bash we could simply go: 228 | # 229 | # readarray ARGS < <( xargs -n1 <<<"$var" ) && 230 | # set -- "${ARGS[@]}" "$@" 231 | # 232 | # but POSIX shell has neither arrays nor command substitution, so instead we 233 | # post-process each arg (as a line of input to sed) to backslash-escape any 234 | # character that might be a shell metacharacter, then use eval to reverse 235 | # that process (while maintaining the separation between arguments), and wrap 236 | # the whole thing up as a single "set" statement. 237 | # 238 | # This will of course break if any of these variables contains a newline or 239 | # an unmatched quote. 240 | # 241 | 242 | eval "set -- $( 243 | printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | 244 | xargs -n1 | 245 | sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | 246 | tr '\n' ' ' 247 | )" '"$@"' 248 | 249 | exec "$JAVACMD" "$@" 250 | -------------------------------------------------------------------------------- /ios/Marknotes.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 54; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 00E356F31AD99517003FC87E /* MarknotesTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* MarknotesTests.m */; }; 11 | 0C80B921A6F3F58F76C31292 /* libPods-Marknotes.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-Marknotes.a */; }; 12 | 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; 13 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 14 | 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 15 | 7699B88040F8A987B510C191 /* libPods-Marknotes-MarknotesTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-Marknotes-MarknotesTests.a */; }; 16 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; 17 | /* End PBXBuildFile section */ 18 | 19 | /* Begin PBXContainerItemProxy section */ 20 | 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = { 21 | isa = PBXContainerItemProxy; 22 | containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; 23 | proxyType = 1; 24 | remoteGlobalIDString = 13B07F861A680F5B00A75B9A; 25 | remoteInfo = Marknotes; 26 | }; 27 | /* End PBXContainerItemProxy section */ 28 | 29 | /* Begin PBXFileReference section */ 30 | 00E356EE1AD99517003FC87E /* MarknotesTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MarknotesTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 31 | 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 32 | 00E356F21AD99517003FC87E /* MarknotesTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MarknotesTests.m; sourceTree = ""; }; 33 | 13B07F961A680F5B00A75B9A /* Marknotes.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Marknotes.app; sourceTree = BUILT_PRODUCTS_DIR; }; 34 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Marknotes/AppDelegate.h; sourceTree = ""; }; 35 | 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = Marknotes/AppDelegate.mm; sourceTree = ""; }; 36 | 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Marknotes/Images.xcassets; sourceTree = ""; }; 37 | 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Marknotes/Info.plist; sourceTree = ""; }; 38 | 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Marknotes/main.m; sourceTree = ""; }; 39 | 19F6CBCC0A4E27FBF8BF4A61 /* libPods-Marknotes-MarknotesTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Marknotes-MarknotesTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 40 | 3B4392A12AC88292D35C810B /* Pods-Marknotes.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Marknotes.debug.xcconfig"; path = "Target Support Files/Pods-Marknotes/Pods-Marknotes.debug.xcconfig"; sourceTree = ""; }; 41 | 5709B34CF0A7D63546082F79 /* Pods-Marknotes.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Marknotes.release.xcconfig"; path = "Target Support Files/Pods-Marknotes/Pods-Marknotes.release.xcconfig"; sourceTree = ""; }; 42 | 5B7EB9410499542E8C5724F5 /* Pods-Marknotes-MarknotesTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Marknotes-MarknotesTests.debug.xcconfig"; path = "Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests.debug.xcconfig"; sourceTree = ""; }; 43 | 5DCACB8F33CDC322A6C60F78 /* libPods-Marknotes.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Marknotes.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 44 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = Marknotes/LaunchScreen.storyboard; sourceTree = ""; }; 45 | 89C6BE57DB24E9ADA2F236DE /* Pods-Marknotes-MarknotesTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Marknotes-MarknotesTests.release.xcconfig"; path = "Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests.release.xcconfig"; sourceTree = ""; }; 46 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; 47 | /* End PBXFileReference section */ 48 | 49 | /* Begin PBXFrameworksBuildPhase section */ 50 | 00E356EB1AD99517003FC87E /* Frameworks */ = { 51 | isa = PBXFrameworksBuildPhase; 52 | buildActionMask = 2147483647; 53 | files = ( 54 | 7699B88040F8A987B510C191 /* libPods-Marknotes-MarknotesTests.a in Frameworks */, 55 | ); 56 | runOnlyForDeploymentPostprocessing = 0; 57 | }; 58 | 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { 59 | isa = PBXFrameworksBuildPhase; 60 | buildActionMask = 2147483647; 61 | files = ( 62 | 0C80B921A6F3F58F76C31292 /* libPods-Marknotes.a in Frameworks */, 63 | ); 64 | runOnlyForDeploymentPostprocessing = 0; 65 | }; 66 | /* End PBXFrameworksBuildPhase section */ 67 | 68 | /* Begin PBXGroup section */ 69 | 00E356EF1AD99517003FC87E /* MarknotesTests */ = { 70 | isa = PBXGroup; 71 | children = ( 72 | 00E356F21AD99517003FC87E /* MarknotesTests.m */, 73 | 00E356F01AD99517003FC87E /* Supporting Files */, 74 | ); 75 | path = MarknotesTests; 76 | sourceTree = ""; 77 | }; 78 | 00E356F01AD99517003FC87E /* Supporting Files */ = { 79 | isa = PBXGroup; 80 | children = ( 81 | 00E356F11AD99517003FC87E /* Info.plist */, 82 | ); 83 | name = "Supporting Files"; 84 | sourceTree = ""; 85 | }; 86 | 13B07FAE1A68108700A75B9A /* Marknotes */ = { 87 | isa = PBXGroup; 88 | children = ( 89 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */, 90 | 13B07FB01A68108700A75B9A /* AppDelegate.mm */, 91 | 13B07FB51A68108700A75B9A /* Images.xcassets */, 92 | 13B07FB61A68108700A75B9A /* Info.plist */, 93 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */, 94 | 13B07FB71A68108700A75B9A /* main.m */, 95 | ); 96 | name = Marknotes; 97 | sourceTree = ""; 98 | }; 99 | 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { 100 | isa = PBXGroup; 101 | children = ( 102 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */, 103 | 5DCACB8F33CDC322A6C60F78 /* libPods-Marknotes.a */, 104 | 19F6CBCC0A4E27FBF8BF4A61 /* libPods-Marknotes-MarknotesTests.a */, 105 | ); 106 | name = Frameworks; 107 | sourceTree = ""; 108 | }; 109 | 832341AE1AAA6A7D00B99B32 /* Libraries */ = { 110 | isa = PBXGroup; 111 | children = ( 112 | ); 113 | name = Libraries; 114 | sourceTree = ""; 115 | }; 116 | 83CBB9F61A601CBA00E9B192 = { 117 | isa = PBXGroup; 118 | children = ( 119 | 13B07FAE1A68108700A75B9A /* Marknotes */, 120 | 832341AE1AAA6A7D00B99B32 /* Libraries */, 121 | 00E356EF1AD99517003FC87E /* MarknotesTests */, 122 | 83CBBA001A601CBA00E9B192 /* Products */, 123 | 2D16E6871FA4F8E400B85C8A /* Frameworks */, 124 | BBD78D7AC51CEA395F1C20DB /* Pods */, 125 | ); 126 | indentWidth = 2; 127 | sourceTree = ""; 128 | tabWidth = 2; 129 | usesTabs = 0; 130 | }; 131 | 83CBBA001A601CBA00E9B192 /* Products */ = { 132 | isa = PBXGroup; 133 | children = ( 134 | 13B07F961A680F5B00A75B9A /* Marknotes.app */, 135 | 00E356EE1AD99517003FC87E /* MarknotesTests.xctest */, 136 | ); 137 | name = Products; 138 | sourceTree = ""; 139 | }; 140 | BBD78D7AC51CEA395F1C20DB /* Pods */ = { 141 | isa = PBXGroup; 142 | children = ( 143 | 3B4392A12AC88292D35C810B /* Pods-Marknotes.debug.xcconfig */, 144 | 5709B34CF0A7D63546082F79 /* Pods-Marknotes.release.xcconfig */, 145 | 5B7EB9410499542E8C5724F5 /* Pods-Marknotes-MarknotesTests.debug.xcconfig */, 146 | 89C6BE57DB24E9ADA2F236DE /* Pods-Marknotes-MarknotesTests.release.xcconfig */, 147 | ); 148 | path = Pods; 149 | sourceTree = ""; 150 | }; 151 | /* End PBXGroup section */ 152 | 153 | /* Begin PBXNativeTarget section */ 154 | 00E356ED1AD99517003FC87E /* MarknotesTests */ = { 155 | isa = PBXNativeTarget; 156 | buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "MarknotesTests" */; 157 | buildPhases = ( 158 | A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */, 159 | 00E356EA1AD99517003FC87E /* Sources */, 160 | 00E356EB1AD99517003FC87E /* Frameworks */, 161 | 00E356EC1AD99517003FC87E /* Resources */, 162 | C59DA0FBD6956966B86A3779 /* [CP] Embed Pods Frameworks */, 163 | F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */, 164 | ); 165 | buildRules = ( 166 | ); 167 | dependencies = ( 168 | 00E356F51AD99517003FC87E /* PBXTargetDependency */, 169 | ); 170 | name = MarknotesTests; 171 | productName = MarknotesTests; 172 | productReference = 00E356EE1AD99517003FC87E /* MarknotesTests.xctest */; 173 | productType = "com.apple.product-type.bundle.unit-test"; 174 | }; 175 | 13B07F861A680F5B00A75B9A /* Marknotes */ = { 176 | isa = PBXNativeTarget; 177 | buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Marknotes" */; 178 | buildPhases = ( 179 | C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */, 180 | 13B07F871A680F5B00A75B9A /* Sources */, 181 | 13B07F8C1A680F5B00A75B9A /* Frameworks */, 182 | 13B07F8E1A680F5B00A75B9A /* Resources */, 183 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, 184 | 00EEFC60759A1932668264C0 /* [CP] Embed Pods Frameworks */, 185 | E235C05ADACE081382539298 /* [CP] Copy Pods Resources */, 186 | ); 187 | buildRules = ( 188 | ); 189 | dependencies = ( 190 | ); 191 | name = Marknotes; 192 | productName = Marknotes; 193 | productReference = 13B07F961A680F5B00A75B9A /* Marknotes.app */; 194 | productType = "com.apple.product-type.application"; 195 | }; 196 | /* End PBXNativeTarget section */ 197 | 198 | /* Begin PBXProject section */ 199 | 83CBB9F71A601CBA00E9B192 /* Project object */ = { 200 | isa = PBXProject; 201 | attributes = { 202 | LastUpgradeCheck = 1210; 203 | TargetAttributes = { 204 | 00E356ED1AD99517003FC87E = { 205 | CreatedOnToolsVersion = 6.2; 206 | TestTargetID = 13B07F861A680F5B00A75B9A; 207 | }; 208 | 13B07F861A680F5B00A75B9A = { 209 | LastSwiftMigration = 1120; 210 | }; 211 | }; 212 | }; 213 | buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "Marknotes" */; 214 | compatibilityVersion = "Xcode 12.0"; 215 | developmentRegion = en; 216 | hasScannedForEncodings = 0; 217 | knownRegions = ( 218 | en, 219 | Base, 220 | ); 221 | mainGroup = 83CBB9F61A601CBA00E9B192; 222 | productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; 223 | projectDirPath = ""; 224 | projectRoot = ""; 225 | targets = ( 226 | 13B07F861A680F5B00A75B9A /* Marknotes */, 227 | 00E356ED1AD99517003FC87E /* MarknotesTests */, 228 | ); 229 | }; 230 | /* End PBXProject section */ 231 | 232 | /* Begin PBXResourcesBuildPhase section */ 233 | 00E356EC1AD99517003FC87E /* Resources */ = { 234 | isa = PBXResourcesBuildPhase; 235 | buildActionMask = 2147483647; 236 | files = ( 237 | ); 238 | runOnlyForDeploymentPostprocessing = 0; 239 | }; 240 | 13B07F8E1A680F5B00A75B9A /* Resources */ = { 241 | isa = PBXResourcesBuildPhase; 242 | buildActionMask = 2147483647; 243 | files = ( 244 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */, 245 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 246 | ); 247 | runOnlyForDeploymentPostprocessing = 0; 248 | }; 249 | /* End PBXResourcesBuildPhase section */ 250 | 251 | /* Begin PBXShellScriptBuildPhase section */ 252 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { 253 | isa = PBXShellScriptBuildPhase; 254 | buildActionMask = 2147483647; 255 | files = ( 256 | ); 257 | inputPaths = ( 258 | "$(SRCROOT)/.xcode.env.local", 259 | "$(SRCROOT)/.xcode.env", 260 | ); 261 | name = "Bundle React Native code and images"; 262 | outputPaths = ( 263 | ); 264 | runOnlyForDeploymentPostprocessing = 0; 265 | shellPath = /bin/sh; 266 | shellScript = "set -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; 267 | }; 268 | 00EEFC60759A1932668264C0 /* [CP] Embed Pods Frameworks */ = { 269 | isa = PBXShellScriptBuildPhase; 270 | buildActionMask = 2147483647; 271 | files = ( 272 | ); 273 | inputFileListPaths = ( 274 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-frameworks-${CONFIGURATION}-input-files.xcfilelist", 275 | ); 276 | name = "[CP] Embed Pods Frameworks"; 277 | outputFileListPaths = ( 278 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-frameworks-${CONFIGURATION}-output-files.xcfilelist", 279 | ); 280 | runOnlyForDeploymentPostprocessing = 0; 281 | shellPath = /bin/sh; 282 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-frameworks.sh\"\n"; 283 | showEnvVarsInLog = 0; 284 | }; 285 | A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */ = { 286 | isa = PBXShellScriptBuildPhase; 287 | buildActionMask = 2147483647; 288 | files = ( 289 | ); 290 | inputFileListPaths = ( 291 | ); 292 | inputPaths = ( 293 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 294 | "${PODS_ROOT}/Manifest.lock", 295 | ); 296 | name = "[CP] Check Pods Manifest.lock"; 297 | outputFileListPaths = ( 298 | ); 299 | outputPaths = ( 300 | "$(DERIVED_FILE_DIR)/Pods-Marknotes-MarknotesTests-checkManifestLockResult.txt", 301 | ); 302 | runOnlyForDeploymentPostprocessing = 0; 303 | shellPath = /bin/sh; 304 | 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"; 305 | showEnvVarsInLog = 0; 306 | }; 307 | C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */ = { 308 | isa = PBXShellScriptBuildPhase; 309 | buildActionMask = 2147483647; 310 | files = ( 311 | ); 312 | inputFileListPaths = ( 313 | ); 314 | inputPaths = ( 315 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 316 | "${PODS_ROOT}/Manifest.lock", 317 | ); 318 | name = "[CP] Check Pods Manifest.lock"; 319 | outputFileListPaths = ( 320 | ); 321 | outputPaths = ( 322 | "$(DERIVED_FILE_DIR)/Pods-Marknotes-checkManifestLockResult.txt", 323 | ); 324 | runOnlyForDeploymentPostprocessing = 0; 325 | shellPath = /bin/sh; 326 | 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"; 327 | showEnvVarsInLog = 0; 328 | }; 329 | C59DA0FBD6956966B86A3779 /* [CP] Embed Pods Frameworks */ = { 330 | isa = PBXShellScriptBuildPhase; 331 | buildActionMask = 2147483647; 332 | files = ( 333 | ); 334 | inputFileListPaths = ( 335 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", 336 | ); 337 | name = "[CP] Embed Pods Frameworks"; 338 | outputFileListPaths = ( 339 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", 340 | ); 341 | runOnlyForDeploymentPostprocessing = 0; 342 | shellPath = /bin/sh; 343 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-frameworks.sh\"\n"; 344 | showEnvVarsInLog = 0; 345 | }; 346 | E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = { 347 | isa = PBXShellScriptBuildPhase; 348 | buildActionMask = 2147483647; 349 | files = ( 350 | ); 351 | inputFileListPaths = ( 352 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-resources-${CONFIGURATION}-input-files.xcfilelist", 353 | ); 354 | name = "[CP] Copy Pods Resources"; 355 | outputFileListPaths = ( 356 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-resources-${CONFIGURATION}-output-files.xcfilelist", 357 | ); 358 | runOnlyForDeploymentPostprocessing = 0; 359 | shellPath = /bin/sh; 360 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marknotes/Pods-Marknotes-resources.sh\"\n"; 361 | showEnvVarsInLog = 0; 362 | }; 363 | F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */ = { 364 | isa = PBXShellScriptBuildPhase; 365 | buildActionMask = 2147483647; 366 | files = ( 367 | ); 368 | inputFileListPaths = ( 369 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-resources-${CONFIGURATION}-input-files.xcfilelist", 370 | ); 371 | name = "[CP] Copy Pods Resources"; 372 | outputFileListPaths = ( 373 | "${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-resources-${CONFIGURATION}-output-files.xcfilelist", 374 | ); 375 | runOnlyForDeploymentPostprocessing = 0; 376 | shellPath = /bin/sh; 377 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marknotes-MarknotesTests/Pods-Marknotes-MarknotesTests-resources.sh\"\n"; 378 | showEnvVarsInLog = 0; 379 | }; 380 | /* End PBXShellScriptBuildPhase section */ 381 | 382 | /* Begin PBXSourcesBuildPhase section */ 383 | 00E356EA1AD99517003FC87E /* Sources */ = { 384 | isa = PBXSourcesBuildPhase; 385 | buildActionMask = 2147483647; 386 | files = ( 387 | 00E356F31AD99517003FC87E /* MarknotesTests.m in Sources */, 388 | ); 389 | runOnlyForDeploymentPostprocessing = 0; 390 | }; 391 | 13B07F871A680F5B00A75B9A /* Sources */ = { 392 | isa = PBXSourcesBuildPhase; 393 | buildActionMask = 2147483647; 394 | files = ( 395 | 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */, 396 | 13B07FC11A68108700A75B9A /* main.m in Sources */, 397 | ); 398 | runOnlyForDeploymentPostprocessing = 0; 399 | }; 400 | /* End PBXSourcesBuildPhase section */ 401 | 402 | /* Begin PBXTargetDependency section */ 403 | 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { 404 | isa = PBXTargetDependency; 405 | target = 13B07F861A680F5B00A75B9A /* Marknotes */; 406 | targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; 407 | }; 408 | /* End PBXTargetDependency section */ 409 | 410 | /* Begin XCBuildConfiguration section */ 411 | 00E356F61AD99517003FC87E /* Debug */ = { 412 | isa = XCBuildConfiguration; 413 | baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-Marknotes-MarknotesTests.debug.xcconfig */; 414 | buildSettings = { 415 | BUNDLE_LOADER = "$(TEST_HOST)"; 416 | GCC_PREPROCESSOR_DEFINITIONS = ( 417 | "DEBUG=1", 418 | "$(inherited)", 419 | ); 420 | INFOPLIST_FILE = MarknotesTests/Info.plist; 421 | IPHONEOS_DEPLOYMENT_TARGET = 13.4; 422 | LD_RUNPATH_SEARCH_PATHS = ( 423 | "$(inherited)", 424 | "@executable_path/Frameworks", 425 | "@loader_path/Frameworks", 426 | ); 427 | OTHER_LDFLAGS = ( 428 | "-ObjC", 429 | "-lc++", 430 | "$(inherited)", 431 | ); 432 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 433 | PRODUCT_NAME = "$(TARGET_NAME)"; 434 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Marknotes.app/Marknotes"; 435 | }; 436 | name = Debug; 437 | }; 438 | 00E356F71AD99517003FC87E /* Release */ = { 439 | isa = XCBuildConfiguration; 440 | baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-Marknotes-MarknotesTests.release.xcconfig */; 441 | buildSettings = { 442 | BUNDLE_LOADER = "$(TEST_HOST)"; 443 | COPY_PHASE_STRIP = NO; 444 | INFOPLIST_FILE = MarknotesTests/Info.plist; 445 | IPHONEOS_DEPLOYMENT_TARGET = 13.4; 446 | LD_RUNPATH_SEARCH_PATHS = ( 447 | "$(inherited)", 448 | "@executable_path/Frameworks", 449 | "@loader_path/Frameworks", 450 | ); 451 | OTHER_LDFLAGS = ( 452 | "-ObjC", 453 | "-lc++", 454 | "$(inherited)", 455 | ); 456 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 457 | PRODUCT_NAME = "$(TARGET_NAME)"; 458 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Marknotes.app/Marknotes"; 459 | }; 460 | name = Release; 461 | }; 462 | 13B07F941A680F5B00A75B9A /* Debug */ = { 463 | isa = XCBuildConfiguration; 464 | baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-Marknotes.debug.xcconfig */; 465 | buildSettings = { 466 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 467 | CLANG_ENABLE_MODULES = YES; 468 | CURRENT_PROJECT_VERSION = 1; 469 | ENABLE_BITCODE = NO; 470 | INFOPLIST_FILE = Marknotes/Info.plist; 471 | LD_RUNPATH_SEARCH_PATHS = ( 472 | "$(inherited)", 473 | "@executable_path/Frameworks", 474 | ); 475 | MARKETING_VERSION = 1.0; 476 | OTHER_LDFLAGS = ( 477 | "$(inherited)", 478 | "-ObjC", 479 | "-lc++", 480 | ); 481 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 482 | PRODUCT_NAME = Marknotes; 483 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 484 | SWIFT_VERSION = 5.0; 485 | VERSIONING_SYSTEM = "apple-generic"; 486 | }; 487 | name = Debug; 488 | }; 489 | 13B07F951A680F5B00A75B9A /* Release */ = { 490 | isa = XCBuildConfiguration; 491 | baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-Marknotes.release.xcconfig */; 492 | buildSettings = { 493 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 494 | CLANG_ENABLE_MODULES = YES; 495 | CURRENT_PROJECT_VERSION = 1; 496 | INFOPLIST_FILE = Marknotes/Info.plist; 497 | LD_RUNPATH_SEARCH_PATHS = ( 498 | "$(inherited)", 499 | "@executable_path/Frameworks", 500 | ); 501 | MARKETING_VERSION = 1.0; 502 | OTHER_LDFLAGS = ( 503 | "$(inherited)", 504 | "-ObjC", 505 | "-lc++", 506 | ); 507 | PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; 508 | PRODUCT_NAME = Marknotes; 509 | SWIFT_VERSION = 5.0; 510 | VERSIONING_SYSTEM = "apple-generic"; 511 | }; 512 | name = Release; 513 | }; 514 | 83CBBA201A601CBA00E9B192 /* Debug */ = { 515 | isa = XCBuildConfiguration; 516 | buildSettings = { 517 | ALWAYS_SEARCH_USER_PATHS = NO; 518 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 519 | CLANG_CXX_LANGUAGE_STANDARD = "c++20"; 520 | CLANG_CXX_LIBRARY = "libc++"; 521 | CLANG_ENABLE_MODULES = YES; 522 | CLANG_ENABLE_OBJC_ARC = YES; 523 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 524 | CLANG_WARN_BOOL_CONVERSION = YES; 525 | CLANG_WARN_COMMA = YES; 526 | CLANG_WARN_CONSTANT_CONVERSION = YES; 527 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 528 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 529 | CLANG_WARN_EMPTY_BODY = YES; 530 | CLANG_WARN_ENUM_CONVERSION = YES; 531 | CLANG_WARN_INFINITE_RECURSION = YES; 532 | CLANG_WARN_INT_CONVERSION = YES; 533 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 534 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 535 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 536 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 537 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; 538 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 539 | CLANG_WARN_STRICT_PROTOTYPES = YES; 540 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 541 | CLANG_WARN_UNREACHABLE_CODE = YES; 542 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 543 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 544 | COPY_PHASE_STRIP = NO; 545 | ENABLE_STRICT_OBJC_MSGSEND = YES; 546 | ENABLE_TESTABILITY = YES; 547 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; 548 | GCC_C_LANGUAGE_STANDARD = gnu99; 549 | GCC_DYNAMIC_NO_PIC = NO; 550 | GCC_NO_COMMON_BLOCKS = YES; 551 | GCC_OPTIMIZATION_LEVEL = 0; 552 | GCC_PREPROCESSOR_DEFINITIONS = ( 553 | "DEBUG=1", 554 | "$(inherited)", 555 | ); 556 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 557 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 558 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 559 | GCC_WARN_UNDECLARED_SELECTOR = YES; 560 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 561 | GCC_WARN_UNUSED_FUNCTION = YES; 562 | GCC_WARN_UNUSED_VARIABLE = YES; 563 | IPHONEOS_DEPLOYMENT_TARGET = 13.4; 564 | LD_RUNPATH_SEARCH_PATHS = ( 565 | /usr/lib/swift, 566 | "$(inherited)", 567 | ); 568 | LIBRARY_SEARCH_PATHS = ( 569 | "\"$(SDKROOT)/usr/lib/swift\"", 570 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", 571 | "\"$(inherited)\"", 572 | ); 573 | MTL_ENABLE_DEBUG_INFO = YES; 574 | ONLY_ACTIVE_ARCH = YES; 575 | OTHER_CFLAGS = "$(inherited)"; 576 | OTHER_CPLUSPLUSFLAGS = ( 577 | "$(OTHER_CFLAGS)", 578 | "-DFOLLY_NO_CONFIG", 579 | "-DFOLLY_MOBILE=1", 580 | "-DFOLLY_USE_LIBCPP=1", 581 | "-DFOLLY_CFG_NO_COROUTINES=1", 582 | ); 583 | OTHER_LDFLAGS = ( 584 | "$(inherited)", 585 | " ", 586 | ); 587 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; 588 | SDKROOT = iphoneos; 589 | USE_HERMES = true; 590 | }; 591 | name = Debug; 592 | }; 593 | 83CBBA211A601CBA00E9B192 /* Release */ = { 594 | isa = XCBuildConfiguration; 595 | buildSettings = { 596 | ALWAYS_SEARCH_USER_PATHS = NO; 597 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 598 | CLANG_CXX_LANGUAGE_STANDARD = "c++20"; 599 | CLANG_CXX_LIBRARY = "libc++"; 600 | CLANG_ENABLE_MODULES = YES; 601 | CLANG_ENABLE_OBJC_ARC = YES; 602 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 603 | CLANG_WARN_BOOL_CONVERSION = YES; 604 | CLANG_WARN_COMMA = YES; 605 | CLANG_WARN_CONSTANT_CONVERSION = YES; 606 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 607 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 608 | CLANG_WARN_EMPTY_BODY = YES; 609 | CLANG_WARN_ENUM_CONVERSION = YES; 610 | CLANG_WARN_INFINITE_RECURSION = YES; 611 | CLANG_WARN_INT_CONVERSION = YES; 612 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 613 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 614 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 615 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 616 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; 617 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 618 | CLANG_WARN_STRICT_PROTOTYPES = YES; 619 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 620 | CLANG_WARN_UNREACHABLE_CODE = YES; 621 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 622 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 623 | COPY_PHASE_STRIP = YES; 624 | ENABLE_NS_ASSERTIONS = NO; 625 | ENABLE_STRICT_OBJC_MSGSEND = YES; 626 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; 627 | GCC_C_LANGUAGE_STANDARD = gnu99; 628 | GCC_NO_COMMON_BLOCKS = YES; 629 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 630 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 631 | GCC_WARN_UNDECLARED_SELECTOR = YES; 632 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 633 | GCC_WARN_UNUSED_FUNCTION = YES; 634 | GCC_WARN_UNUSED_VARIABLE = YES; 635 | IPHONEOS_DEPLOYMENT_TARGET = 13.4; 636 | LD_RUNPATH_SEARCH_PATHS = ( 637 | /usr/lib/swift, 638 | "$(inherited)", 639 | ); 640 | LIBRARY_SEARCH_PATHS = ( 641 | "\"$(SDKROOT)/usr/lib/swift\"", 642 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", 643 | "\"$(inherited)\"", 644 | ); 645 | MTL_ENABLE_DEBUG_INFO = NO; 646 | OTHER_CFLAGS = "$(inherited)"; 647 | OTHER_CPLUSPLUSFLAGS = ( 648 | "$(OTHER_CFLAGS)", 649 | "-DFOLLY_NO_CONFIG", 650 | "-DFOLLY_MOBILE=1", 651 | "-DFOLLY_USE_LIBCPP=1", 652 | "-DFOLLY_CFG_NO_COROUTINES=1", 653 | ); 654 | OTHER_LDFLAGS = ( 655 | "$(inherited)", 656 | " ", 657 | ); 658 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; 659 | SDKROOT = iphoneos; 660 | USE_HERMES = true; 661 | VALIDATE_PRODUCT = YES; 662 | }; 663 | name = Release; 664 | }; 665 | /* End XCBuildConfiguration section */ 666 | 667 | /* Begin XCConfigurationList section */ 668 | 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "MarknotesTests" */ = { 669 | isa = XCConfigurationList; 670 | buildConfigurations = ( 671 | 00E356F61AD99517003FC87E /* Debug */, 672 | 00E356F71AD99517003FC87E /* Release */, 673 | ); 674 | defaultConfigurationIsVisible = 0; 675 | defaultConfigurationName = Release; 676 | }; 677 | 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Marknotes" */ = { 678 | isa = XCConfigurationList; 679 | buildConfigurations = ( 680 | 13B07F941A680F5B00A75B9A /* Debug */, 681 | 13B07F951A680F5B00A75B9A /* Release */, 682 | ); 683 | defaultConfigurationIsVisible = 0; 684 | defaultConfigurationName = Release; 685 | }; 686 | 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "Marknotes" */ = { 687 | isa = XCConfigurationList; 688 | buildConfigurations = ( 689 | 83CBBA201A601CBA00E9B192 /* Debug */, 690 | 83CBBA211A601CBA00E9B192 /* Release */, 691 | ); 692 | defaultConfigurationIsVisible = 0; 693 | defaultConfigurationName = Release; 694 | }; 695 | /* End XCConfigurationList section */ 696 | }; 697 | rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; 698 | } 699 | -------------------------------------------------------------------------------- /ios/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - boost (1.83.0) 3 | - CocoaAsyncSocket (7.6.5) 4 | - DoubleConversion (1.1.6) 5 | - FBLazyVector (0.73.4) 6 | - FBReactNativeSpec (0.73.4): 7 | - RCT-Folly (= 2022.05.16.00) 8 | - RCTRequired (= 0.73.4) 9 | - RCTTypeSafety (= 0.73.4) 10 | - React-Core (= 0.73.4) 11 | - React-jsi (= 0.73.4) 12 | - ReactCommon/turbomodule/core (= 0.73.4) 13 | - Flipper (0.201.0): 14 | - Flipper-Folly (~> 2.6) 15 | - Flipper-Boost-iOSX (1.76.0.1.11) 16 | - Flipper-DoubleConversion (3.2.0.1) 17 | - Flipper-Fmt (7.1.7) 18 | - Flipper-Folly (2.6.10): 19 | - Flipper-Boost-iOSX 20 | - Flipper-DoubleConversion 21 | - Flipper-Fmt (= 7.1.7) 22 | - Flipper-Glog 23 | - libevent (~> 2.1.12) 24 | - OpenSSL-Universal (= 1.1.1100) 25 | - Flipper-Glog (0.5.0.5) 26 | - Flipper-PeerTalk (0.0.4) 27 | - FlipperKit (0.201.0): 28 | - FlipperKit/Core (= 0.201.0) 29 | - FlipperKit/Core (0.201.0): 30 | - Flipper (~> 0.201.0) 31 | - FlipperKit/CppBridge 32 | - FlipperKit/FBCxxFollyDynamicConvert 33 | - FlipperKit/FBDefines 34 | - FlipperKit/FKPortForwarding 35 | - SocketRocket (~> 0.6.0) 36 | - FlipperKit/CppBridge (0.201.0): 37 | - Flipper (~> 0.201.0) 38 | - FlipperKit/FBCxxFollyDynamicConvert (0.201.0): 39 | - Flipper-Folly (~> 2.6) 40 | - FlipperKit/FBDefines (0.201.0) 41 | - FlipperKit/FKPortForwarding (0.201.0): 42 | - CocoaAsyncSocket (~> 7.6) 43 | - Flipper-PeerTalk (~> 0.0.4) 44 | - FlipperKit/FlipperKitHighlightOverlay (0.201.0) 45 | - FlipperKit/FlipperKitLayoutHelpers (0.201.0): 46 | - FlipperKit/Core 47 | - FlipperKit/FlipperKitHighlightOverlay 48 | - FlipperKit/FlipperKitLayoutTextSearchable 49 | - FlipperKit/FlipperKitLayoutIOSDescriptors (0.201.0): 50 | - FlipperKit/Core 51 | - FlipperKit/FlipperKitHighlightOverlay 52 | - FlipperKit/FlipperKitLayoutHelpers 53 | - FlipperKit/FlipperKitLayoutPlugin (0.201.0): 54 | - FlipperKit/Core 55 | - FlipperKit/FlipperKitHighlightOverlay 56 | - FlipperKit/FlipperKitLayoutHelpers 57 | - FlipperKit/FlipperKitLayoutIOSDescriptors 58 | - FlipperKit/FlipperKitLayoutTextSearchable 59 | - FlipperKit/FlipperKitLayoutTextSearchable (0.201.0) 60 | - FlipperKit/FlipperKitNetworkPlugin (0.201.0): 61 | - FlipperKit/Core 62 | - FlipperKit/FlipperKitReactPlugin (0.201.0): 63 | - FlipperKit/Core 64 | - FlipperKit/FlipperKitUserDefaultsPlugin (0.201.0): 65 | - FlipperKit/Core 66 | - FlipperKit/SKIOSNetworkPlugin (0.201.0): 67 | - FlipperKit/Core 68 | - FlipperKit/FlipperKitNetworkPlugin 69 | - fmt (6.2.1) 70 | - glog (0.3.5) 71 | - hermes-engine (0.73.4): 72 | - hermes-engine/Pre-built (= 0.73.4) 73 | - hermes-engine/Pre-built (0.73.4) 74 | - libevent (2.1.12) 75 | - OpenSSL-Universal (1.1.1100) 76 | - RCT-Folly (2022.05.16.00): 77 | - boost 78 | - DoubleConversion 79 | - fmt (~> 6.2.1) 80 | - glog 81 | - RCT-Folly/Default (= 2022.05.16.00) 82 | - RCT-Folly/Default (2022.05.16.00): 83 | - boost 84 | - DoubleConversion 85 | - fmt (~> 6.2.1) 86 | - glog 87 | - RCT-Folly/Fabric (2022.05.16.00): 88 | - boost 89 | - DoubleConversion 90 | - fmt (~> 6.2.1) 91 | - glog 92 | - RCT-Folly/Futures (2022.05.16.00): 93 | - boost 94 | - DoubleConversion 95 | - fmt (~> 6.2.1) 96 | - glog 97 | - libevent 98 | - RCTRequired (0.73.4) 99 | - RCTTypeSafety (0.73.4): 100 | - FBLazyVector (= 0.73.4) 101 | - RCTRequired (= 0.73.4) 102 | - React-Core (= 0.73.4) 103 | - React (0.73.4): 104 | - React-Core (= 0.73.4) 105 | - React-Core/DevSupport (= 0.73.4) 106 | - React-Core/RCTWebSocket (= 0.73.4) 107 | - React-RCTActionSheet (= 0.73.4) 108 | - React-RCTAnimation (= 0.73.4) 109 | - React-RCTBlob (= 0.73.4) 110 | - React-RCTImage (= 0.73.4) 111 | - React-RCTLinking (= 0.73.4) 112 | - React-RCTNetwork (= 0.73.4) 113 | - React-RCTSettings (= 0.73.4) 114 | - React-RCTText (= 0.73.4) 115 | - React-RCTVibration (= 0.73.4) 116 | - React-callinvoker (0.73.4) 117 | - React-Codegen (0.73.4): 118 | - DoubleConversion 119 | - FBReactNativeSpec 120 | - glog 121 | - hermes-engine 122 | - RCT-Folly 123 | - RCTRequired 124 | - RCTTypeSafety 125 | - React-Core 126 | - React-jsi 127 | - React-jsiexecutor 128 | - React-NativeModulesApple 129 | - React-rncore 130 | - ReactCommon/turbomodule/bridging 131 | - ReactCommon/turbomodule/core 132 | - React-Core (0.73.4): 133 | - glog 134 | - hermes-engine 135 | - RCT-Folly (= 2022.05.16.00) 136 | - React-Core/Default (= 0.73.4) 137 | - React-cxxreact 138 | - React-hermes 139 | - React-jsi 140 | - React-jsiexecutor 141 | - React-perflogger 142 | - React-runtimescheduler 143 | - React-utils 144 | - SocketRocket (= 0.6.1) 145 | - Yoga 146 | - React-Core/CoreModulesHeaders (0.73.4): 147 | - glog 148 | - hermes-engine 149 | - RCT-Folly (= 2022.05.16.00) 150 | - React-Core/Default 151 | - React-cxxreact 152 | - React-hermes 153 | - React-jsi 154 | - React-jsiexecutor 155 | - React-perflogger 156 | - React-runtimescheduler 157 | - React-utils 158 | - SocketRocket (= 0.6.1) 159 | - Yoga 160 | - React-Core/Default (0.73.4): 161 | - glog 162 | - hermes-engine 163 | - RCT-Folly (= 2022.05.16.00) 164 | - React-cxxreact 165 | - React-hermes 166 | - React-jsi 167 | - React-jsiexecutor 168 | - React-perflogger 169 | - React-runtimescheduler 170 | - React-utils 171 | - SocketRocket (= 0.6.1) 172 | - Yoga 173 | - React-Core/DevSupport (0.73.4): 174 | - glog 175 | - hermes-engine 176 | - RCT-Folly (= 2022.05.16.00) 177 | - React-Core/Default (= 0.73.4) 178 | - React-Core/RCTWebSocket (= 0.73.4) 179 | - React-cxxreact 180 | - React-hermes 181 | - React-jsi 182 | - React-jsiexecutor 183 | - React-jsinspector (= 0.73.4) 184 | - React-perflogger 185 | - React-runtimescheduler 186 | - React-utils 187 | - SocketRocket (= 0.6.1) 188 | - Yoga 189 | - React-Core/RCTActionSheetHeaders (0.73.4): 190 | - glog 191 | - hermes-engine 192 | - RCT-Folly (= 2022.05.16.00) 193 | - React-Core/Default 194 | - React-cxxreact 195 | - React-hermes 196 | - React-jsi 197 | - React-jsiexecutor 198 | - React-perflogger 199 | - React-runtimescheduler 200 | - React-utils 201 | - SocketRocket (= 0.6.1) 202 | - Yoga 203 | - React-Core/RCTAnimationHeaders (0.73.4): 204 | - glog 205 | - hermes-engine 206 | - RCT-Folly (= 2022.05.16.00) 207 | - React-Core/Default 208 | - React-cxxreact 209 | - React-hermes 210 | - React-jsi 211 | - React-jsiexecutor 212 | - React-perflogger 213 | - React-runtimescheduler 214 | - React-utils 215 | - SocketRocket (= 0.6.1) 216 | - Yoga 217 | - React-Core/RCTBlobHeaders (0.73.4): 218 | - glog 219 | - hermes-engine 220 | - RCT-Folly (= 2022.05.16.00) 221 | - React-Core/Default 222 | - React-cxxreact 223 | - React-hermes 224 | - React-jsi 225 | - React-jsiexecutor 226 | - React-perflogger 227 | - React-runtimescheduler 228 | - React-utils 229 | - SocketRocket (= 0.6.1) 230 | - Yoga 231 | - React-Core/RCTImageHeaders (0.73.4): 232 | - glog 233 | - hermes-engine 234 | - RCT-Folly (= 2022.05.16.00) 235 | - React-Core/Default 236 | - React-cxxreact 237 | - React-hermes 238 | - React-jsi 239 | - React-jsiexecutor 240 | - React-perflogger 241 | - React-runtimescheduler 242 | - React-utils 243 | - SocketRocket (= 0.6.1) 244 | - Yoga 245 | - React-Core/RCTLinkingHeaders (0.73.4): 246 | - glog 247 | - hermes-engine 248 | - RCT-Folly (= 2022.05.16.00) 249 | - React-Core/Default 250 | - React-cxxreact 251 | - React-hermes 252 | - React-jsi 253 | - React-jsiexecutor 254 | - React-perflogger 255 | - React-runtimescheduler 256 | - React-utils 257 | - SocketRocket (= 0.6.1) 258 | - Yoga 259 | - React-Core/RCTNetworkHeaders (0.73.4): 260 | - glog 261 | - hermes-engine 262 | - RCT-Folly (= 2022.05.16.00) 263 | - React-Core/Default 264 | - React-cxxreact 265 | - React-hermes 266 | - React-jsi 267 | - React-jsiexecutor 268 | - React-perflogger 269 | - React-runtimescheduler 270 | - React-utils 271 | - SocketRocket (= 0.6.1) 272 | - Yoga 273 | - React-Core/RCTSettingsHeaders (0.73.4): 274 | - glog 275 | - hermes-engine 276 | - RCT-Folly (= 2022.05.16.00) 277 | - React-Core/Default 278 | - React-cxxreact 279 | - React-hermes 280 | - React-jsi 281 | - React-jsiexecutor 282 | - React-perflogger 283 | - React-runtimescheduler 284 | - React-utils 285 | - SocketRocket (= 0.6.1) 286 | - Yoga 287 | - React-Core/RCTTextHeaders (0.73.4): 288 | - glog 289 | - hermes-engine 290 | - RCT-Folly (= 2022.05.16.00) 291 | - React-Core/Default 292 | - React-cxxreact 293 | - React-hermes 294 | - React-jsi 295 | - React-jsiexecutor 296 | - React-perflogger 297 | - React-runtimescheduler 298 | - React-utils 299 | - SocketRocket (= 0.6.1) 300 | - Yoga 301 | - React-Core/RCTVibrationHeaders (0.73.4): 302 | - glog 303 | - hermes-engine 304 | - RCT-Folly (= 2022.05.16.00) 305 | - React-Core/Default 306 | - React-cxxreact 307 | - React-hermes 308 | - React-jsi 309 | - React-jsiexecutor 310 | - React-perflogger 311 | - React-runtimescheduler 312 | - React-utils 313 | - SocketRocket (= 0.6.1) 314 | - Yoga 315 | - React-Core/RCTWebSocket (0.73.4): 316 | - glog 317 | - hermes-engine 318 | - RCT-Folly (= 2022.05.16.00) 319 | - React-Core/Default (= 0.73.4) 320 | - React-cxxreact 321 | - React-hermes 322 | - React-jsi 323 | - React-jsiexecutor 324 | - React-perflogger 325 | - React-runtimescheduler 326 | - React-utils 327 | - SocketRocket (= 0.6.1) 328 | - Yoga 329 | - React-CoreModules (0.73.4): 330 | - RCT-Folly (= 2022.05.16.00) 331 | - RCTTypeSafety (= 0.73.4) 332 | - React-Codegen 333 | - React-Core/CoreModulesHeaders (= 0.73.4) 334 | - React-jsi (= 0.73.4) 335 | - React-NativeModulesApple 336 | - React-RCTBlob 337 | - React-RCTImage (= 0.73.4) 338 | - ReactCommon 339 | - SocketRocket (= 0.6.1) 340 | - React-cxxreact (0.73.4): 341 | - boost (= 1.83.0) 342 | - DoubleConversion 343 | - fmt (~> 6.2.1) 344 | - glog 345 | - hermes-engine 346 | - RCT-Folly (= 2022.05.16.00) 347 | - React-callinvoker (= 0.73.4) 348 | - React-debug (= 0.73.4) 349 | - React-jsi (= 0.73.4) 350 | - React-jsinspector (= 0.73.4) 351 | - React-logger (= 0.73.4) 352 | - React-perflogger (= 0.73.4) 353 | - React-runtimeexecutor (= 0.73.4) 354 | - React-debug (0.73.4) 355 | - React-Fabric (0.73.4): 356 | - DoubleConversion 357 | - fmt (~> 6.2.1) 358 | - glog 359 | - hermes-engine 360 | - RCT-Folly/Fabric (= 2022.05.16.00) 361 | - RCTRequired 362 | - RCTTypeSafety 363 | - React-Core 364 | - React-cxxreact 365 | - React-debug 366 | - React-Fabric/animations (= 0.73.4) 367 | - React-Fabric/attributedstring (= 0.73.4) 368 | - React-Fabric/componentregistry (= 0.73.4) 369 | - React-Fabric/componentregistrynative (= 0.73.4) 370 | - React-Fabric/components (= 0.73.4) 371 | - React-Fabric/core (= 0.73.4) 372 | - React-Fabric/imagemanager (= 0.73.4) 373 | - React-Fabric/leakchecker (= 0.73.4) 374 | - React-Fabric/mounting (= 0.73.4) 375 | - React-Fabric/scheduler (= 0.73.4) 376 | - React-Fabric/telemetry (= 0.73.4) 377 | - React-Fabric/templateprocessor (= 0.73.4) 378 | - React-Fabric/textlayoutmanager (= 0.73.4) 379 | - React-Fabric/uimanager (= 0.73.4) 380 | - React-graphics 381 | - React-jsi 382 | - React-jsiexecutor 383 | - React-logger 384 | - React-rendererdebug 385 | - React-runtimescheduler 386 | - React-utils 387 | - ReactCommon/turbomodule/core 388 | - React-Fabric/animations (0.73.4): 389 | - DoubleConversion 390 | - fmt (~> 6.2.1) 391 | - glog 392 | - hermes-engine 393 | - RCT-Folly/Fabric (= 2022.05.16.00) 394 | - RCTRequired 395 | - RCTTypeSafety 396 | - React-Core 397 | - React-cxxreact 398 | - React-debug 399 | - React-graphics 400 | - React-jsi 401 | - React-jsiexecutor 402 | - React-logger 403 | - React-rendererdebug 404 | - React-runtimescheduler 405 | - React-utils 406 | - ReactCommon/turbomodule/core 407 | - React-Fabric/attributedstring (0.73.4): 408 | - DoubleConversion 409 | - fmt (~> 6.2.1) 410 | - glog 411 | - hermes-engine 412 | - RCT-Folly/Fabric (= 2022.05.16.00) 413 | - RCTRequired 414 | - RCTTypeSafety 415 | - React-Core 416 | - React-cxxreact 417 | - React-debug 418 | - React-graphics 419 | - React-jsi 420 | - React-jsiexecutor 421 | - React-logger 422 | - React-rendererdebug 423 | - React-runtimescheduler 424 | - React-utils 425 | - ReactCommon/turbomodule/core 426 | - React-Fabric/componentregistry (0.73.4): 427 | - DoubleConversion 428 | - fmt (~> 6.2.1) 429 | - glog 430 | - hermes-engine 431 | - RCT-Folly/Fabric (= 2022.05.16.00) 432 | - RCTRequired 433 | - RCTTypeSafety 434 | - React-Core 435 | - React-cxxreact 436 | - React-debug 437 | - React-graphics 438 | - React-jsi 439 | - React-jsiexecutor 440 | - React-logger 441 | - React-rendererdebug 442 | - React-runtimescheduler 443 | - React-utils 444 | - ReactCommon/turbomodule/core 445 | - React-Fabric/componentregistrynative (0.73.4): 446 | - DoubleConversion 447 | - fmt (~> 6.2.1) 448 | - glog 449 | - hermes-engine 450 | - RCT-Folly/Fabric (= 2022.05.16.00) 451 | - RCTRequired 452 | - RCTTypeSafety 453 | - React-Core 454 | - React-cxxreact 455 | - React-debug 456 | - React-graphics 457 | - React-jsi 458 | - React-jsiexecutor 459 | - React-logger 460 | - React-rendererdebug 461 | - React-runtimescheduler 462 | - React-utils 463 | - ReactCommon/turbomodule/core 464 | - React-Fabric/components (0.73.4): 465 | - DoubleConversion 466 | - fmt (~> 6.2.1) 467 | - glog 468 | - hermes-engine 469 | - RCT-Folly/Fabric (= 2022.05.16.00) 470 | - RCTRequired 471 | - RCTTypeSafety 472 | - React-Core 473 | - React-cxxreact 474 | - React-debug 475 | - React-Fabric/components/inputaccessory (= 0.73.4) 476 | - React-Fabric/components/legacyviewmanagerinterop (= 0.73.4) 477 | - React-Fabric/components/modal (= 0.73.4) 478 | - React-Fabric/components/rncore (= 0.73.4) 479 | - React-Fabric/components/root (= 0.73.4) 480 | - React-Fabric/components/safeareaview (= 0.73.4) 481 | - React-Fabric/components/scrollview (= 0.73.4) 482 | - React-Fabric/components/text (= 0.73.4) 483 | - React-Fabric/components/textinput (= 0.73.4) 484 | - React-Fabric/components/unimplementedview (= 0.73.4) 485 | - React-Fabric/components/view (= 0.73.4) 486 | - React-graphics 487 | - React-jsi 488 | - React-jsiexecutor 489 | - React-logger 490 | - React-rendererdebug 491 | - React-runtimescheduler 492 | - React-utils 493 | - ReactCommon/turbomodule/core 494 | - React-Fabric/components/inputaccessory (0.73.4): 495 | - DoubleConversion 496 | - fmt (~> 6.2.1) 497 | - glog 498 | - hermes-engine 499 | - RCT-Folly/Fabric (= 2022.05.16.00) 500 | - RCTRequired 501 | - RCTTypeSafety 502 | - React-Core 503 | - React-cxxreact 504 | - React-debug 505 | - React-graphics 506 | - React-jsi 507 | - React-jsiexecutor 508 | - React-logger 509 | - React-rendererdebug 510 | - React-runtimescheduler 511 | - React-utils 512 | - ReactCommon/turbomodule/core 513 | - React-Fabric/components/legacyviewmanagerinterop (0.73.4): 514 | - DoubleConversion 515 | - fmt (~> 6.2.1) 516 | - glog 517 | - hermes-engine 518 | - RCT-Folly/Fabric (= 2022.05.16.00) 519 | - RCTRequired 520 | - RCTTypeSafety 521 | - React-Core 522 | - React-cxxreact 523 | - React-debug 524 | - React-graphics 525 | - React-jsi 526 | - React-jsiexecutor 527 | - React-logger 528 | - React-rendererdebug 529 | - React-runtimescheduler 530 | - React-utils 531 | - ReactCommon/turbomodule/core 532 | - React-Fabric/components/modal (0.73.4): 533 | - DoubleConversion 534 | - fmt (~> 6.2.1) 535 | - glog 536 | - hermes-engine 537 | - RCT-Folly/Fabric (= 2022.05.16.00) 538 | - RCTRequired 539 | - RCTTypeSafety 540 | - React-Core 541 | - React-cxxreact 542 | - React-debug 543 | - React-graphics 544 | - React-jsi 545 | - React-jsiexecutor 546 | - React-logger 547 | - React-rendererdebug 548 | - React-runtimescheduler 549 | - React-utils 550 | - ReactCommon/turbomodule/core 551 | - React-Fabric/components/rncore (0.73.4): 552 | - DoubleConversion 553 | - fmt (~> 6.2.1) 554 | - glog 555 | - hermes-engine 556 | - RCT-Folly/Fabric (= 2022.05.16.00) 557 | - RCTRequired 558 | - RCTTypeSafety 559 | - React-Core 560 | - React-cxxreact 561 | - React-debug 562 | - React-graphics 563 | - React-jsi 564 | - React-jsiexecutor 565 | - React-logger 566 | - React-rendererdebug 567 | - React-runtimescheduler 568 | - React-utils 569 | - ReactCommon/turbomodule/core 570 | - React-Fabric/components/root (0.73.4): 571 | - DoubleConversion 572 | - fmt (~> 6.2.1) 573 | - glog 574 | - hermes-engine 575 | - RCT-Folly/Fabric (= 2022.05.16.00) 576 | - RCTRequired 577 | - RCTTypeSafety 578 | - React-Core 579 | - React-cxxreact 580 | - React-debug 581 | - React-graphics 582 | - React-jsi 583 | - React-jsiexecutor 584 | - React-logger 585 | - React-rendererdebug 586 | - React-runtimescheduler 587 | - React-utils 588 | - ReactCommon/turbomodule/core 589 | - React-Fabric/components/safeareaview (0.73.4): 590 | - DoubleConversion 591 | - fmt (~> 6.2.1) 592 | - glog 593 | - hermes-engine 594 | - RCT-Folly/Fabric (= 2022.05.16.00) 595 | - RCTRequired 596 | - RCTTypeSafety 597 | - React-Core 598 | - React-cxxreact 599 | - React-debug 600 | - React-graphics 601 | - React-jsi 602 | - React-jsiexecutor 603 | - React-logger 604 | - React-rendererdebug 605 | - React-runtimescheduler 606 | - React-utils 607 | - ReactCommon/turbomodule/core 608 | - React-Fabric/components/scrollview (0.73.4): 609 | - DoubleConversion 610 | - fmt (~> 6.2.1) 611 | - glog 612 | - hermes-engine 613 | - RCT-Folly/Fabric (= 2022.05.16.00) 614 | - RCTRequired 615 | - RCTTypeSafety 616 | - React-Core 617 | - React-cxxreact 618 | - React-debug 619 | - React-graphics 620 | - React-jsi 621 | - React-jsiexecutor 622 | - React-logger 623 | - React-rendererdebug 624 | - React-runtimescheduler 625 | - React-utils 626 | - ReactCommon/turbomodule/core 627 | - React-Fabric/components/text (0.73.4): 628 | - DoubleConversion 629 | - fmt (~> 6.2.1) 630 | - glog 631 | - hermes-engine 632 | - RCT-Folly/Fabric (= 2022.05.16.00) 633 | - RCTRequired 634 | - RCTTypeSafety 635 | - React-Core 636 | - React-cxxreact 637 | - React-debug 638 | - React-graphics 639 | - React-jsi 640 | - React-jsiexecutor 641 | - React-logger 642 | - React-rendererdebug 643 | - React-runtimescheduler 644 | - React-utils 645 | - ReactCommon/turbomodule/core 646 | - React-Fabric/components/textinput (0.73.4): 647 | - DoubleConversion 648 | - fmt (~> 6.2.1) 649 | - glog 650 | - hermes-engine 651 | - RCT-Folly/Fabric (= 2022.05.16.00) 652 | - RCTRequired 653 | - RCTTypeSafety 654 | - React-Core 655 | - React-cxxreact 656 | - React-debug 657 | - React-graphics 658 | - React-jsi 659 | - React-jsiexecutor 660 | - React-logger 661 | - React-rendererdebug 662 | - React-runtimescheduler 663 | - React-utils 664 | - ReactCommon/turbomodule/core 665 | - React-Fabric/components/unimplementedview (0.73.4): 666 | - DoubleConversion 667 | - fmt (~> 6.2.1) 668 | - glog 669 | - hermes-engine 670 | - RCT-Folly/Fabric (= 2022.05.16.00) 671 | - RCTRequired 672 | - RCTTypeSafety 673 | - React-Core 674 | - React-cxxreact 675 | - React-debug 676 | - React-graphics 677 | - React-jsi 678 | - React-jsiexecutor 679 | - React-logger 680 | - React-rendererdebug 681 | - React-runtimescheduler 682 | - React-utils 683 | - ReactCommon/turbomodule/core 684 | - React-Fabric/components/view (0.73.4): 685 | - DoubleConversion 686 | - fmt (~> 6.2.1) 687 | - glog 688 | - hermes-engine 689 | - RCT-Folly/Fabric (= 2022.05.16.00) 690 | - RCTRequired 691 | - RCTTypeSafety 692 | - React-Core 693 | - React-cxxreact 694 | - React-debug 695 | - React-graphics 696 | - React-jsi 697 | - React-jsiexecutor 698 | - React-logger 699 | - React-rendererdebug 700 | - React-runtimescheduler 701 | - React-utils 702 | - ReactCommon/turbomodule/core 703 | - Yoga 704 | - React-Fabric/core (0.73.4): 705 | - DoubleConversion 706 | - fmt (~> 6.2.1) 707 | - glog 708 | - hermes-engine 709 | - RCT-Folly/Fabric (= 2022.05.16.00) 710 | - RCTRequired 711 | - RCTTypeSafety 712 | - React-Core 713 | - React-cxxreact 714 | - React-debug 715 | - React-graphics 716 | - React-jsi 717 | - React-jsiexecutor 718 | - React-logger 719 | - React-rendererdebug 720 | - React-runtimescheduler 721 | - React-utils 722 | - ReactCommon/turbomodule/core 723 | - React-Fabric/imagemanager (0.73.4): 724 | - DoubleConversion 725 | - fmt (~> 6.2.1) 726 | - glog 727 | - hermes-engine 728 | - RCT-Folly/Fabric (= 2022.05.16.00) 729 | - RCTRequired 730 | - RCTTypeSafety 731 | - React-Core 732 | - React-cxxreact 733 | - React-debug 734 | - React-graphics 735 | - React-jsi 736 | - React-jsiexecutor 737 | - React-logger 738 | - React-rendererdebug 739 | - React-runtimescheduler 740 | - React-utils 741 | - ReactCommon/turbomodule/core 742 | - React-Fabric/leakchecker (0.73.4): 743 | - DoubleConversion 744 | - fmt (~> 6.2.1) 745 | - glog 746 | - hermes-engine 747 | - RCT-Folly/Fabric (= 2022.05.16.00) 748 | - RCTRequired 749 | - RCTTypeSafety 750 | - React-Core 751 | - React-cxxreact 752 | - React-debug 753 | - React-graphics 754 | - React-jsi 755 | - React-jsiexecutor 756 | - React-logger 757 | - React-rendererdebug 758 | - React-runtimescheduler 759 | - React-utils 760 | - ReactCommon/turbomodule/core 761 | - React-Fabric/mounting (0.73.4): 762 | - DoubleConversion 763 | - fmt (~> 6.2.1) 764 | - glog 765 | - hermes-engine 766 | - RCT-Folly/Fabric (= 2022.05.16.00) 767 | - RCTRequired 768 | - RCTTypeSafety 769 | - React-Core 770 | - React-cxxreact 771 | - React-debug 772 | - React-graphics 773 | - React-jsi 774 | - React-jsiexecutor 775 | - React-logger 776 | - React-rendererdebug 777 | - React-runtimescheduler 778 | - React-utils 779 | - ReactCommon/turbomodule/core 780 | - React-Fabric/scheduler (0.73.4): 781 | - DoubleConversion 782 | - fmt (~> 6.2.1) 783 | - glog 784 | - hermes-engine 785 | - RCT-Folly/Fabric (= 2022.05.16.00) 786 | - RCTRequired 787 | - RCTTypeSafety 788 | - React-Core 789 | - React-cxxreact 790 | - React-debug 791 | - React-graphics 792 | - React-jsi 793 | - React-jsiexecutor 794 | - React-logger 795 | - React-rendererdebug 796 | - React-runtimescheduler 797 | - React-utils 798 | - ReactCommon/turbomodule/core 799 | - React-Fabric/telemetry (0.73.4): 800 | - DoubleConversion 801 | - fmt (~> 6.2.1) 802 | - glog 803 | - hermes-engine 804 | - RCT-Folly/Fabric (= 2022.05.16.00) 805 | - RCTRequired 806 | - RCTTypeSafety 807 | - React-Core 808 | - React-cxxreact 809 | - React-debug 810 | - React-graphics 811 | - React-jsi 812 | - React-jsiexecutor 813 | - React-logger 814 | - React-rendererdebug 815 | - React-runtimescheduler 816 | - React-utils 817 | - ReactCommon/turbomodule/core 818 | - React-Fabric/templateprocessor (0.73.4): 819 | - DoubleConversion 820 | - fmt (~> 6.2.1) 821 | - glog 822 | - hermes-engine 823 | - RCT-Folly/Fabric (= 2022.05.16.00) 824 | - RCTRequired 825 | - RCTTypeSafety 826 | - React-Core 827 | - React-cxxreact 828 | - React-debug 829 | - React-graphics 830 | - React-jsi 831 | - React-jsiexecutor 832 | - React-logger 833 | - React-rendererdebug 834 | - React-runtimescheduler 835 | - React-utils 836 | - ReactCommon/turbomodule/core 837 | - React-Fabric/textlayoutmanager (0.73.4): 838 | - DoubleConversion 839 | - fmt (~> 6.2.1) 840 | - glog 841 | - hermes-engine 842 | - RCT-Folly/Fabric (= 2022.05.16.00) 843 | - RCTRequired 844 | - RCTTypeSafety 845 | - React-Core 846 | - React-cxxreact 847 | - React-debug 848 | - React-Fabric/uimanager 849 | - React-graphics 850 | - React-jsi 851 | - React-jsiexecutor 852 | - React-logger 853 | - React-rendererdebug 854 | - React-runtimescheduler 855 | - React-utils 856 | - ReactCommon/turbomodule/core 857 | - React-Fabric/uimanager (0.73.4): 858 | - DoubleConversion 859 | - fmt (~> 6.2.1) 860 | - glog 861 | - hermes-engine 862 | - RCT-Folly/Fabric (= 2022.05.16.00) 863 | - RCTRequired 864 | - RCTTypeSafety 865 | - React-Core 866 | - React-cxxreact 867 | - React-debug 868 | - React-graphics 869 | - React-jsi 870 | - React-jsiexecutor 871 | - React-logger 872 | - React-rendererdebug 873 | - React-runtimescheduler 874 | - React-utils 875 | - ReactCommon/turbomodule/core 876 | - React-FabricImage (0.73.4): 877 | - DoubleConversion 878 | - fmt (~> 6.2.1) 879 | - glog 880 | - hermes-engine 881 | - RCT-Folly/Fabric (= 2022.05.16.00) 882 | - RCTRequired (= 0.73.4) 883 | - RCTTypeSafety (= 0.73.4) 884 | - React-Fabric 885 | - React-graphics 886 | - React-ImageManager 887 | - React-jsi 888 | - React-jsiexecutor (= 0.73.4) 889 | - React-logger 890 | - React-rendererdebug 891 | - React-utils 892 | - ReactCommon 893 | - Yoga 894 | - React-graphics (0.73.4): 895 | - glog 896 | - RCT-Folly/Fabric (= 2022.05.16.00) 897 | - React-Core/Default (= 0.73.4) 898 | - React-utils 899 | - React-hermes (0.73.4): 900 | - DoubleConversion 901 | - fmt (~> 6.2.1) 902 | - glog 903 | - hermes-engine 904 | - RCT-Folly (= 2022.05.16.00) 905 | - RCT-Folly/Futures (= 2022.05.16.00) 906 | - React-cxxreact (= 0.73.4) 907 | - React-jsi 908 | - React-jsiexecutor (= 0.73.4) 909 | - React-jsinspector (= 0.73.4) 910 | - React-perflogger (= 0.73.4) 911 | - React-ImageManager (0.73.4): 912 | - glog 913 | - RCT-Folly/Fabric 914 | - React-Core/Default 915 | - React-debug 916 | - React-Fabric 917 | - React-graphics 918 | - React-rendererdebug 919 | - React-utils 920 | - React-jserrorhandler (0.73.4): 921 | - RCT-Folly/Fabric (= 2022.05.16.00) 922 | - React-debug 923 | - React-jsi 924 | - React-Mapbuffer 925 | - React-jsi (0.73.4): 926 | - boost (= 1.83.0) 927 | - DoubleConversion 928 | - fmt (~> 6.2.1) 929 | - glog 930 | - hermes-engine 931 | - RCT-Folly (= 2022.05.16.00) 932 | - React-jsiexecutor (0.73.4): 933 | - DoubleConversion 934 | - fmt (~> 6.2.1) 935 | - glog 936 | - hermes-engine 937 | - RCT-Folly (= 2022.05.16.00) 938 | - React-cxxreact (= 0.73.4) 939 | - React-jsi (= 0.73.4) 940 | - React-perflogger (= 0.73.4) 941 | - React-jsinspector (0.73.4) 942 | - React-logger (0.73.4): 943 | - glog 944 | - React-Mapbuffer (0.73.4): 945 | - glog 946 | - React-debug 947 | - react-native-safe-area-context (4.9.0): 948 | - React-Core 949 | - React-nativeconfig (0.73.4) 950 | - React-NativeModulesApple (0.73.4): 951 | - glog 952 | - hermes-engine 953 | - React-callinvoker 954 | - React-Core 955 | - React-cxxreact 956 | - React-jsi 957 | - React-runtimeexecutor 958 | - ReactCommon/turbomodule/bridging 959 | - ReactCommon/turbomodule/core 960 | - React-perflogger (0.73.4) 961 | - React-RCTActionSheet (0.73.4): 962 | - React-Core/RCTActionSheetHeaders (= 0.73.4) 963 | - React-RCTAnimation (0.73.4): 964 | - RCT-Folly (= 2022.05.16.00) 965 | - RCTTypeSafety 966 | - React-Codegen 967 | - React-Core/RCTAnimationHeaders 968 | - React-jsi 969 | - React-NativeModulesApple 970 | - ReactCommon 971 | - React-RCTAppDelegate (0.73.4): 972 | - RCT-Folly 973 | - RCTRequired 974 | - RCTTypeSafety 975 | - React-Core 976 | - React-CoreModules 977 | - React-hermes 978 | - React-nativeconfig 979 | - React-NativeModulesApple 980 | - React-RCTFabric 981 | - React-RCTImage 982 | - React-RCTNetwork 983 | - React-runtimescheduler 984 | - ReactCommon 985 | - React-RCTBlob (0.73.4): 986 | - hermes-engine 987 | - RCT-Folly (= 2022.05.16.00) 988 | - React-Codegen 989 | - React-Core/RCTBlobHeaders 990 | - React-Core/RCTWebSocket 991 | - React-jsi 992 | - React-NativeModulesApple 993 | - React-RCTNetwork 994 | - ReactCommon 995 | - React-RCTFabric (0.73.4): 996 | - glog 997 | - hermes-engine 998 | - RCT-Folly/Fabric (= 2022.05.16.00) 999 | - React-Core 1000 | - React-debug 1001 | - React-Fabric 1002 | - React-FabricImage 1003 | - React-graphics 1004 | - React-ImageManager 1005 | - React-jsi 1006 | - React-nativeconfig 1007 | - React-RCTImage 1008 | - React-RCTText 1009 | - React-rendererdebug 1010 | - React-runtimescheduler 1011 | - React-utils 1012 | - Yoga 1013 | - React-RCTImage (0.73.4): 1014 | - RCT-Folly (= 2022.05.16.00) 1015 | - RCTTypeSafety 1016 | - React-Codegen 1017 | - React-Core/RCTImageHeaders 1018 | - React-jsi 1019 | - React-NativeModulesApple 1020 | - React-RCTNetwork 1021 | - ReactCommon 1022 | - React-RCTLinking (0.73.4): 1023 | - React-Codegen 1024 | - React-Core/RCTLinkingHeaders (= 0.73.4) 1025 | - React-jsi (= 0.73.4) 1026 | - React-NativeModulesApple 1027 | - ReactCommon 1028 | - ReactCommon/turbomodule/core (= 0.73.4) 1029 | - React-RCTNetwork (0.73.4): 1030 | - RCT-Folly (= 2022.05.16.00) 1031 | - RCTTypeSafety 1032 | - React-Codegen 1033 | - React-Core/RCTNetworkHeaders 1034 | - React-jsi 1035 | - React-NativeModulesApple 1036 | - ReactCommon 1037 | - React-RCTSettings (0.73.4): 1038 | - RCT-Folly (= 2022.05.16.00) 1039 | - RCTTypeSafety 1040 | - React-Codegen 1041 | - React-Core/RCTSettingsHeaders 1042 | - React-jsi 1043 | - React-NativeModulesApple 1044 | - ReactCommon 1045 | - React-RCTText (0.73.4): 1046 | - React-Core/RCTTextHeaders (= 0.73.4) 1047 | - Yoga 1048 | - React-RCTVibration (0.73.4): 1049 | - RCT-Folly (= 2022.05.16.00) 1050 | - React-Codegen 1051 | - React-Core/RCTVibrationHeaders 1052 | - React-jsi 1053 | - React-NativeModulesApple 1054 | - ReactCommon 1055 | - React-rendererdebug (0.73.4): 1056 | - DoubleConversion 1057 | - fmt (~> 6.2.1) 1058 | - RCT-Folly (= 2022.05.16.00) 1059 | - React-debug 1060 | - React-rncore (0.73.4) 1061 | - React-runtimeexecutor (0.73.4): 1062 | - React-jsi (= 0.73.4) 1063 | - React-runtimescheduler (0.73.4): 1064 | - glog 1065 | - hermes-engine 1066 | - RCT-Folly (= 2022.05.16.00) 1067 | - React-callinvoker 1068 | - React-cxxreact 1069 | - React-debug 1070 | - React-jsi 1071 | - React-rendererdebug 1072 | - React-runtimeexecutor 1073 | - React-utils 1074 | - React-utils (0.73.4): 1075 | - glog 1076 | - RCT-Folly (= 2022.05.16.00) 1077 | - React-debug 1078 | - ReactCommon (0.73.4): 1079 | - React-logger (= 0.73.4) 1080 | - ReactCommon/turbomodule (= 0.73.4) 1081 | - ReactCommon/turbomodule (0.73.4): 1082 | - DoubleConversion 1083 | - fmt (~> 6.2.1) 1084 | - glog 1085 | - hermes-engine 1086 | - RCT-Folly (= 2022.05.16.00) 1087 | - React-callinvoker (= 0.73.4) 1088 | - React-cxxreact (= 0.73.4) 1089 | - React-jsi (= 0.73.4) 1090 | - React-logger (= 0.73.4) 1091 | - React-perflogger (= 0.73.4) 1092 | - ReactCommon/turbomodule/bridging (= 0.73.4) 1093 | - ReactCommon/turbomodule/core (= 0.73.4) 1094 | - ReactCommon/turbomodule/bridging (0.73.4): 1095 | - DoubleConversion 1096 | - fmt (~> 6.2.1) 1097 | - glog 1098 | - hermes-engine 1099 | - RCT-Folly (= 2022.05.16.00) 1100 | - React-callinvoker (= 0.73.4) 1101 | - React-cxxreact (= 0.73.4) 1102 | - React-jsi (= 0.73.4) 1103 | - React-logger (= 0.73.4) 1104 | - React-perflogger (= 0.73.4) 1105 | - ReactCommon/turbomodule/core (0.73.4): 1106 | - DoubleConversion 1107 | - fmt (~> 6.2.1) 1108 | - glog 1109 | - hermes-engine 1110 | - RCT-Folly (= 2022.05.16.00) 1111 | - React-callinvoker (= 0.73.4) 1112 | - React-cxxreact (= 0.73.4) 1113 | - React-jsi (= 0.73.4) 1114 | - React-logger (= 0.73.4) 1115 | - React-perflogger (= 0.73.4) 1116 | - RNFlashList (1.6.3): 1117 | - React-Core 1118 | - RNGestureHandler (2.15.0): 1119 | - glog 1120 | - RCT-Folly (= 2022.05.16.00) 1121 | - React-Core 1122 | - RNLiveMarkdown (0.1.5): 1123 | - glog 1124 | - RCT-Folly (= 2022.05.16.00) 1125 | - React-Core 1126 | - RNReanimated (3.7.0): 1127 | - glog 1128 | - RCT-Folly (= 2022.05.16.00) 1129 | - React-Core 1130 | - ReactCommon/turbomodule/core 1131 | - RNScreens (3.29.0): 1132 | - glog 1133 | - RCT-Folly (= 2022.05.16.00) 1134 | - React-Core 1135 | - SocketRocket (0.6.1) 1136 | - Yoga (1.14.0) 1137 | 1138 | DEPENDENCIES: 1139 | - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) 1140 | - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) 1141 | - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) 1142 | - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) 1143 | - Flipper (= 0.201.0) 1144 | - Flipper-Boost-iOSX (= 1.76.0.1.11) 1145 | - Flipper-DoubleConversion (= 3.2.0.1) 1146 | - Flipper-Fmt (= 7.1.7) 1147 | - Flipper-Folly (= 2.6.10) 1148 | - Flipper-Glog (= 0.5.0.5) 1149 | - Flipper-PeerTalk (= 0.0.4) 1150 | - FlipperKit (= 0.201.0) 1151 | - FlipperKit/Core (= 0.201.0) 1152 | - FlipperKit/CppBridge (= 0.201.0) 1153 | - FlipperKit/FBCxxFollyDynamicConvert (= 0.201.0) 1154 | - FlipperKit/FBDefines (= 0.201.0) 1155 | - FlipperKit/FKPortForwarding (= 0.201.0) 1156 | - FlipperKit/FlipperKitHighlightOverlay (= 0.201.0) 1157 | - FlipperKit/FlipperKitLayoutPlugin (= 0.201.0) 1158 | - FlipperKit/FlipperKitLayoutTextSearchable (= 0.201.0) 1159 | - FlipperKit/FlipperKitNetworkPlugin (= 0.201.0) 1160 | - FlipperKit/FlipperKitReactPlugin (= 0.201.0) 1161 | - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.201.0) 1162 | - FlipperKit/SKIOSNetworkPlugin (= 0.201.0) 1163 | - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) 1164 | - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) 1165 | - libevent (~> 2.1.12) 1166 | - OpenSSL-Universal (= 1.1.1100) 1167 | - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) 1168 | - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) 1169 | - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) 1170 | - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) 1171 | - React (from `../node_modules/react-native/`) 1172 | - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`) 1173 | - React-Codegen (from `build/generated/ios`) 1174 | - React-Core (from `../node_modules/react-native/`) 1175 | - React-Core/DevSupport (from `../node_modules/react-native/`) 1176 | - React-Core/RCTWebSocket (from `../node_modules/react-native/`) 1177 | - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) 1178 | - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) 1179 | - React-debug (from `../node_modules/react-native/ReactCommon/react/debug`) 1180 | - React-Fabric (from `../node_modules/react-native/ReactCommon`) 1181 | - React-FabricImage (from `../node_modules/react-native/ReactCommon`) 1182 | - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`) 1183 | - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`) 1184 | - React-ImageManager (from `../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) 1185 | - React-jserrorhandler (from `../node_modules/react-native/ReactCommon/jserrorhandler`) 1186 | - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) 1187 | - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) 1188 | - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`) 1189 | - React-logger (from `../node_modules/react-native/ReactCommon/logger`) 1190 | - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`) 1191 | - react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`) 1192 | - React-nativeconfig (from `../node_modules/react-native/ReactCommon`) 1193 | - React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) 1194 | - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) 1195 | - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) 1196 | - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) 1197 | - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`) 1198 | - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) 1199 | - React-RCTFabric (from `../node_modules/react-native/React`) 1200 | - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) 1201 | - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) 1202 | - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) 1203 | - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) 1204 | - React-RCTText (from `../node_modules/react-native/Libraries/Text`) 1205 | - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) 1206 | - React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`) 1207 | - React-rncore (from `../node_modules/react-native/ReactCommon`) 1208 | - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) 1209 | - React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) 1210 | - React-utils (from `../node_modules/react-native/ReactCommon/react/utils`) 1211 | - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) 1212 | - "RNFlashList (from `../node_modules/@shopify/flash-list`)" 1213 | - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) 1214 | - "RNLiveMarkdown (from `../node_modules/@expensify/react-native-live-markdown`)" 1215 | - RNReanimated (from `../node_modules/react-native-reanimated`) 1216 | - RNScreens (from `../node_modules/react-native-screens`) 1217 | - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) 1218 | 1219 | SPEC REPOS: 1220 | trunk: 1221 | - CocoaAsyncSocket 1222 | - Flipper 1223 | - Flipper-Boost-iOSX 1224 | - Flipper-DoubleConversion 1225 | - Flipper-Fmt 1226 | - Flipper-Folly 1227 | - Flipper-Glog 1228 | - Flipper-PeerTalk 1229 | - FlipperKit 1230 | - fmt 1231 | - libevent 1232 | - OpenSSL-Universal 1233 | - SocketRocket 1234 | 1235 | EXTERNAL SOURCES: 1236 | boost: 1237 | :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec" 1238 | DoubleConversion: 1239 | :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" 1240 | FBLazyVector: 1241 | :path: "../node_modules/react-native/Libraries/FBLazyVector" 1242 | FBReactNativeSpec: 1243 | :path: "../node_modules/react-native/React/FBReactNativeSpec" 1244 | glog: 1245 | :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" 1246 | hermes-engine: 1247 | :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" 1248 | :tag: hermes-2023-11-17-RNv0.73.0-21043a3fc062be445e56a2c10ecd8be028dd9cc5 1249 | RCT-Folly: 1250 | :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" 1251 | RCTRequired: 1252 | :path: "../node_modules/react-native/Libraries/RCTRequired" 1253 | RCTTypeSafety: 1254 | :path: "../node_modules/react-native/Libraries/TypeSafety" 1255 | React: 1256 | :path: "../node_modules/react-native/" 1257 | React-callinvoker: 1258 | :path: "../node_modules/react-native/ReactCommon/callinvoker" 1259 | React-Codegen: 1260 | :path: build/generated/ios 1261 | React-Core: 1262 | :path: "../node_modules/react-native/" 1263 | React-CoreModules: 1264 | :path: "../node_modules/react-native/React/CoreModules" 1265 | React-cxxreact: 1266 | :path: "../node_modules/react-native/ReactCommon/cxxreact" 1267 | React-debug: 1268 | :path: "../node_modules/react-native/ReactCommon/react/debug" 1269 | React-Fabric: 1270 | :path: "../node_modules/react-native/ReactCommon" 1271 | React-FabricImage: 1272 | :path: "../node_modules/react-native/ReactCommon" 1273 | React-graphics: 1274 | :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics" 1275 | React-hermes: 1276 | :path: "../node_modules/react-native/ReactCommon/hermes" 1277 | React-ImageManager: 1278 | :path: "../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" 1279 | React-jserrorhandler: 1280 | :path: "../node_modules/react-native/ReactCommon/jserrorhandler" 1281 | React-jsi: 1282 | :path: "../node_modules/react-native/ReactCommon/jsi" 1283 | React-jsiexecutor: 1284 | :path: "../node_modules/react-native/ReactCommon/jsiexecutor" 1285 | React-jsinspector: 1286 | :path: "../node_modules/react-native/ReactCommon/jsinspector-modern" 1287 | React-logger: 1288 | :path: "../node_modules/react-native/ReactCommon/logger" 1289 | React-Mapbuffer: 1290 | :path: "../node_modules/react-native/ReactCommon" 1291 | react-native-safe-area-context: 1292 | :path: "../node_modules/react-native-safe-area-context" 1293 | React-nativeconfig: 1294 | :path: "../node_modules/react-native/ReactCommon" 1295 | React-NativeModulesApple: 1296 | :path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" 1297 | React-perflogger: 1298 | :path: "../node_modules/react-native/ReactCommon/reactperflogger" 1299 | React-RCTActionSheet: 1300 | :path: "../node_modules/react-native/Libraries/ActionSheetIOS" 1301 | React-RCTAnimation: 1302 | :path: "../node_modules/react-native/Libraries/NativeAnimation" 1303 | React-RCTAppDelegate: 1304 | :path: "../node_modules/react-native/Libraries/AppDelegate" 1305 | React-RCTBlob: 1306 | :path: "../node_modules/react-native/Libraries/Blob" 1307 | React-RCTFabric: 1308 | :path: "../node_modules/react-native/React" 1309 | React-RCTImage: 1310 | :path: "../node_modules/react-native/Libraries/Image" 1311 | React-RCTLinking: 1312 | :path: "../node_modules/react-native/Libraries/LinkingIOS" 1313 | React-RCTNetwork: 1314 | :path: "../node_modules/react-native/Libraries/Network" 1315 | React-RCTSettings: 1316 | :path: "../node_modules/react-native/Libraries/Settings" 1317 | React-RCTText: 1318 | :path: "../node_modules/react-native/Libraries/Text" 1319 | React-RCTVibration: 1320 | :path: "../node_modules/react-native/Libraries/Vibration" 1321 | React-rendererdebug: 1322 | :path: "../node_modules/react-native/ReactCommon/react/renderer/debug" 1323 | React-rncore: 1324 | :path: "../node_modules/react-native/ReactCommon" 1325 | React-runtimeexecutor: 1326 | :path: "../node_modules/react-native/ReactCommon/runtimeexecutor" 1327 | React-runtimescheduler: 1328 | :path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" 1329 | React-utils: 1330 | :path: "../node_modules/react-native/ReactCommon/react/utils" 1331 | ReactCommon: 1332 | :path: "../node_modules/react-native/ReactCommon" 1333 | RNFlashList: 1334 | :path: "../node_modules/@shopify/flash-list" 1335 | RNGestureHandler: 1336 | :path: "../node_modules/react-native-gesture-handler" 1337 | RNLiveMarkdown: 1338 | :path: "../node_modules/@expensify/react-native-live-markdown" 1339 | RNReanimated: 1340 | :path: "../node_modules/react-native-reanimated" 1341 | RNScreens: 1342 | :path: "../node_modules/react-native-screens" 1343 | Yoga: 1344 | :path: "../node_modules/react-native/ReactCommon/yoga" 1345 | 1346 | SPEC CHECKSUMS: 1347 | boost: d3f49c53809116a5d38da093a8aa78bf551aed09 1348 | CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 1349 | DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953 1350 | FBLazyVector: 84f6edbe225f38aebd9deaf1540a4160b1f087d7 1351 | FBReactNativeSpec: d0086a479be91c44ce4687a962956a352d2dc697 1352 | Flipper: c7a0093234c4bdd456e363f2f19b2e4b27652d44 1353 | Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c 1354 | Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30 1355 | Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b 1356 | Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3 1357 | Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446 1358 | Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 1359 | FlipperKit: 37525a5d056ef9b93d1578e04bc3ea1de940094f 1360 | fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 1361 | glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2 1362 | hermes-engine: b2669ce35fc4ac14f523b307aff8896799829fe2 1363 | libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 1364 | OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c 1365 | RCT-Folly: 7169b2b1c44399c76a47b5deaaba715eeeb476c0 1366 | RCTRequired: ab7f915c15569f04a49669e573e6e319a53f9faa 1367 | RCTTypeSafety: 63b97ced7b766865057e7154db0e81ce4ee6cf1e 1368 | React: 1c87497e50fa40ba9c54e5ea5e53483a0f8eecc0 1369 | React-callinvoker: e3a52a9a93e3eb004d7282c26a4fb27003273fe6 1370 | React-Codegen: 50c0f8f073e71b929b057b68bf31be604f1dccc8 1371 | React-Core: d0ecde72894b792cb8922efaa0990199cbe85169 1372 | React-CoreModules: 2ff1684dd517f0c441495d90a704d499f05e9d0a 1373 | React-cxxreact: d9be2fac926741052395da0a6d0bab8d71e2f297 1374 | React-debug: 4678e73a37cb501d784e99ff0f219b4940362a3b 1375 | React-Fabric: 460ee9d4b8b9de3382504a711430bfead1d5be1e 1376 | React-FabricImage: d0a0631bc8ad9143f42bfccf9d3d533a144cc3d6 1377 | React-graphics: f0d5040263a9649e2a70ebe27b3120c49411afef 1378 | React-hermes: b9ac2f7b0c1eeb206eb883583cab7a973d570a6e 1379 | React-ImageManager: 6c4bf9d5ed363ead7b5aaf820a3feab221b7063e 1380 | React-jserrorhandler: 6e7a7e187583e14dc7a0053a2bdd66c252ea3b21 1381 | React-jsi: 380cd24dd81a705dd042c18989fb10b07182210c 1382 | React-jsiexecutor: 8ed7a18b9f119440efdcd424c8257dc7e18067e2 1383 | React-jsinspector: 9ac353eccf6ab54d1e0a33862ba91221d1e88460 1384 | React-logger: 0a57b68dd2aec7ff738195f081f0520724b35dab 1385 | React-Mapbuffer: 63913773ed7f96b814a2521e13e6d010282096ad 1386 | react-native-safe-area-context: b97eb6f9e3b7f437806c2ce5983f479f8eb5de4b 1387 | React-nativeconfig: d7af5bae6da70fa15ce44f045621cf99ed24087c 1388 | React-NativeModulesApple: 0123905d5699853ac68519607555a9a4f5c7b3ac 1389 | React-perflogger: 8a1e1af5733004bdd91258dcefbde21e0d1faccd 1390 | React-RCTActionSheet: 64bbff3a3963664c2d0146f870fe8e0264aee4c4 1391 | React-RCTAnimation: b698168a7269265a4694727196484342d695f0c1 1392 | React-RCTAppDelegate: dcd8e955116eb1d1908dfaf08b4c970812e6a1e6 1393 | React-RCTBlob: 47f8c3b2b4b7fa2c5f19c43f0b7f77f57fb9d953 1394 | React-RCTFabric: 6067a32d683d0c2b84d444548bc15a263c64abed 1395 | React-RCTImage: ac0e77a44c290b20db783649b2b9cddc93e3eb99 1396 | React-RCTLinking: e626fd2900913fe5d25922ea1be394b7aafa09c9 1397 | React-RCTNetwork: d3114bce3977dafe8bd06421b29812f5a8527ba0 1398 | React-RCTSettings: a53511f90d8df637a1a11ac729179a4d2f734481 1399 | React-RCTText: f0176f5f5952f9a4a2c7354f5ae71f7c420aaf34 1400 | React-RCTVibration: 8160223c6eda5b187079fec204f80eca8b8f3177 1401 | React-rendererdebug: ed286b4da8648c27d6ed3ae1410d4b21ba890d5a 1402 | React-rncore: 43f133b89ac10c4b6ab43702a541dee1c292a3bf 1403 | React-runtimeexecutor: e6ab6bb083dbdbdd489cff426ed0bce0652e6edf 1404 | React-runtimescheduler: ed48e5faac6751e66ee1261c4bd01643b436f112 1405 | React-utils: 6e5ad394416482ae21831050928ae27348f83487 1406 | ReactCommon: 840a955d37b7f3358554d819446bffcf624b2522 1407 | RNFlashList: 4b4b6b093afc0df60ae08f9cbf6ccd4c836c667a 1408 | RNGestureHandler: deda62b8339496ba721a45e0f3e2d7a319932cee 1409 | RNLiveMarkdown: 35eeecf7e57eb26fdc279d5d4815982a9a9f7beb 1410 | RNReanimated: 7d6d32f238f914f13d9d6fb45c0aef557f7f901e 1411 | RNScreens: b582cb834dc4133307562e930e8fa914b8c04ef2 1412 | SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17 1413 | Yoga: 64cd2a583ead952b0315d5135bf39e053ae9be70 1414 | 1415 | PODFILE CHECKSUM: cf47689861392e46f107acaeacf1e0bcd2a57d0b 1416 | 1417 | COCOAPODS: 1.14.3 1418 | --------------------------------------------------------------------------------