upgrade project to rn 0.67.1

This commit is contained in:
ammarahm-ed
2022-01-22 09:32:12 +05:00
parent 10a98466cd
commit 30528c3b2f
42 changed files with 419 additions and 3761 deletions

View File

@@ -0,0 +1,2 @@
BUNDLE_PATH: "vendor/bundle"
BUNDLE_FORCE_RUBY_PLATFORM: 1

View File

@@ -23,7 +23,7 @@
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
"type": "android.attached",
"device": {
"adbName": "192.168.10.3:5555",
"adbName": "192.168.10.2:5555",
"adbNameAlt":"LMG710ULM3d3678f0"
}
},

View File

@@ -1,3 +0,0 @@
# Windows files
[*.bat]
end_of_line = crlf

View File

@@ -70,4 +70,4 @@ untyped-import
untyped-type-import
[version]
^0.158.0
^0.162.0

View File

@@ -1,3 +0,0 @@
# Windows files should use crlf line endings
# https://help.github.com/articles/dealing-with-line-endings/
*.bat text eol=crlf

View File

@@ -0,0 +1 @@
2.7.4

View File

@@ -1,20 +1,14 @@
import http from 'notes-core/utils/http';
import React, {useEffect} from 'react';
import React, { useEffect } from 'react';
import Orientation from 'react-native-orientation';
import {SafeAreaProvider} from 'react-native-safe-area-context';
import SplashScreen from 'react-native-splash-screen';
import {useAppEvents} from './src/utils/use-app-events';
import {RootView} from './src/navigation/RootView';
import { SafeAreaProvider } from 'react-native-safe-area-context';
import AppLoader from './src/components/AppLoader';
import {useTracked} from './src/provider';
import { RootView } from './src/navigation/RootView';
import { useTracked } from './src/provider';
import {
initialize,
useMessageStore,
useNoteStore,
useSettingStore,
initialize, useSettingStore,
useUserStore
} from './src/provider/stores';
import {DDS} from './src/services/DeviceDetection';
import { DDS } from './src/services/DeviceDetection';
import {
eSendEvent,
eSubscribeEvent,
@@ -22,41 +16,19 @@ import {
} from './src/services/EventManager';
import Notifications from './src/services/Notifications';
import SettingsService from './src/services/SettingsService';
import {Tracker} from './src/utils';
import {db} from './src/utils/database';
import {eDispatchAction} from './src/utils/Events';
import {MMKV} from './src/utils/mmkv';
import { Tracker } from './src/utils';
import { db } from './src/utils/database';
import { eDispatchAction } from './src/utils/Events';
import { MMKV } from './src/utils/mmkv';
import { useAppEvents } from './src/utils/use-app-events';
import RNBootSplash from "react-native-bootsplash";
let databaseHasLoaded = false;
async function loadDefaultNotes() {
try {
return true;
/* const isCreated = await MMKV.getItem('defaultNoteCreated');
if (isCreated) return;
const notes = await http.get(
'https://app.notesnook.com/notes/index_v14.json'
);
if (!notes) return;
for (let note of notes) {
const content = await http.get(note.mobileContent);
await db.notes.add({
title: note.title,
headline: note.headline,
localOnly: true,
content: {type: 'tiny', data: content}
});
}
await MMKV.setItem('defaultNoteCreated', 'yes');
useNoteStore.getState().setNotes(); */
} catch (e) {}
}
const loadDatabase = async () => {
SplashScreen.hide();
RNBootSplash.hide({fade:true})
await db.init();
Notifications.get();
//loadDefaultNotes();
await checkFirstLaunch();
};

4
apps/mobile/Gemfile Normal file
View File

@@ -0,0 +1,4 @@
source 'https://rubygems.org'
# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
ruby '2.7.4'
gem 'cocoapods', '~> 1.11', '>= 1.11.2'

96
apps/mobile/Gemfile.lock Normal file
View File

@@ -0,0 +1,96 @@
GEM
remote: https://rubygems.org/
specs:
CFPropertyList (3.0.5)
rexml
activesupport (6.1.4.4)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
zeitwerk (~> 2.3)
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
algoliasearch (1.27.5)
httpclient (~> 2.8, >= 2.8.3)
json (>= 1.5.1)
atomos (0.1.3)
claide (1.1.0)
cocoapods (1.11.2)
addressable (~> 2.8)
claide (>= 1.0.2, < 2.0)
cocoapods-core (= 1.11.2)
cocoapods-deintegrate (>= 1.0.3, < 2.0)
cocoapods-downloader (>= 1.4.0, < 2.0)
cocoapods-plugins (>= 1.0.0, < 2.0)
cocoapods-search (>= 1.0.0, < 2.0)
cocoapods-trunk (>= 1.4.0, < 2.0)
cocoapods-try (>= 1.1.0, < 2.0)
colored2 (~> 3.1)
escape (~> 0.0.4)
fourflusher (>= 2.3.0, < 3.0)
gh_inspector (~> 1.0)
molinillo (~> 0.8.0)
nap (~> 1.0)
ruby-macho (>= 1.0, < 3.0)
xcodeproj (>= 1.21.0, < 2.0)
cocoapods-core (1.11.2)
activesupport (>= 5.0, < 7)
addressable (~> 2.8)
algoliasearch (~> 1.0)
concurrent-ruby (~> 1.1)
fuzzy_match (~> 2.0.4)
nap (~> 1.0)
netrc (~> 0.11)
public_suffix (~> 4.0)
typhoeus (~> 1.0)
cocoapods-deintegrate (1.0.5)
cocoapods-downloader (1.5.1)
cocoapods-plugins (1.0.0)
nap
cocoapods-search (1.0.1)
cocoapods-trunk (1.6.0)
nap (>= 0.8, < 2.0)
netrc (~> 0.11)
cocoapods-try (1.2.0)
colored2 (3.1.2)
concurrent-ruby (1.1.9)
escape (0.0.4)
ethon (0.15.0)
ffi (>= 1.15.0)
ffi (1.15.5)
fourflusher (2.3.1)
fuzzy_match (2.0.4)
gh_inspector (1.1.3)
httpclient (2.8.3)
i18n (1.8.11)
concurrent-ruby (~> 1.0)
json (2.6.1)
minitest (5.15.0)
molinillo (0.8.0)
nanaimo (0.3.0)
nap (1.1.0)
netrc (0.11.0)
public_suffix (4.0.6)
rexml (3.2.5)
ruby-macho (2.5.1)
typhoeus (1.4.0)
ethon (>= 0.9.0)
tzinfo (2.0.4)
concurrent-ruby (~> 1.0)
xcodeproj (1.21.0)
CFPropertyList (>= 2.3.3, < 4.0)
atomos (~> 0.1.3)
claide (>= 1.0.2, < 2.0)
colored2 (~> 3.1)
nanaimo (~> 0.3.0)
rexml (~> 3.2.4)
zeitwerk (2.5.3)
PLATFORMS
ruby
DEPENDENCIES
cocoapods (~> 1.11, >= 1.11.2)
RUBY VERSION
ruby 2.7.4p191
BUNDLED WITH
2.2.27

View File

@@ -19,10 +19,10 @@
android:label="@string/app_name"
android:requestLegacyExternalStorage="true"
android:roundIcon="@mipmap/ic_launcher_round"
android:theme="@style/AppTheme"
android:theme="@style/BootTheme"
android:largeHeap="true"
android:usesCleartextTraffic="true">
<receiver android:name=".NoteWidget">
<receiver android:exported="true" android:name=".NoteWidget">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
@@ -38,6 +38,7 @@
android:label="@string/app_name"
android:launchMode="singleTask"
android:resizeableActivity="true"
android:exported="true"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -64,13 +65,14 @@
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
<activity android:exported="false" android:name="com.facebook.react.devsupport.DevSettingsActivity" />
<activity
android:name=".ShareActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
android:label="@string/title_activity_share"
android:noHistory="true"
android:screenOrientation="portrait"
android:exported="true"
android:theme="@style/AppThemeB">
<intent-filter android:label="Make Note">
<action android:name="android.intent.action.SEND" />
@@ -122,9 +124,9 @@
<meta-data android:name="com.dieam.reactnativepushnotification.notification_color"
android:resource="@android:color/white"/> <!-- or @android:color/{name} to use a standard color -->
<receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationActions" />
<receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationPublisher" />
<receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationBootEventReceiver">
<receiver android:exported="true" android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationActions" />
<receiver android:exported="true" android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationPublisher" />
<receiver android:exported="true" android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationBootEventReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />

View File

@@ -6,14 +6,15 @@ import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
import android.webkit.WebView;
import org.devio.rn.splashscreen.SplashScreen;
import com.facebook.react.ReactActivityDelegate;
import com.zoontek.rnbootsplash.RNBootSplash;
import com.zoontek.rnbars.RNBars; // <- add this necessary import
public class MainActivity extends ReactActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
SplashScreen.show(this);
super.onCreate(null);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && BuildConfig.DEBUG) {
@@ -27,7 +28,20 @@ public class MainActivity extends ReactActivity {
}
}
@Override
protected ReactActivityDelegate createReactActivityDelegate() {
return new ReactActivityDelegate(this, getMainComponentName()) {
@Override
protected void loadApp(String appKey) {
RNBootSplash.init(MainActivity.this);
RNBars.init(MainActivity.this, "dark-content");
super.loadApp(appKey);
}
};
}
@Override
public void onNewIntent(Intent intent) {

View File

@@ -15,10 +15,15 @@
android:insetRight="@dimen/abc_edit_text_inset_horizontal_material"
android:insetTop="@dimen/abc_edit_text_inset_top_material"
android:insetBottom="@dimen/abc_edit_text_inset_bottom_material">
<selector>
<!--
This file is a copy of abc_edit_text_material (https://bit.ly/3k8fX7I).
The item below with state_pressed="false" and state_focused="false" causes a NullPointerException.
NullPointerException:tempt to invoke virtual method 'android.graphics.drawable.Drawable android.graphics.drawable.Drawable$ConstantState.newDrawable(android.content.res.Resources)'
<item android:state_pressed="false" android:state_focused="false" android:drawable="@drawable/abc_textfield_default_mtrl_alpha"/>
For more info, see https://bit.ly/3CdLStv (react-native/pull/29452) and https://bit.ly/3nxOMoR.
-->
<item android:state_enabled="false" android:drawable="@drawable/abc_textfield_default_mtrl_alpha"/>
<item android:drawable="@drawable/abc_textfield_activated_mtrl_alpha"/>
</selector>
</inset>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

View File

@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:background="#ffffff" xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
>
<ImageView
android:id="@+id/imageView"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignParentRight="false"
android:layout_alignParentBottom="false"
android:layout_marginHorizontal="80dp"
android:src="@drawable/notesnooklogo" />
</RelativeLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

View File

@@ -0,0 +1,47 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowDisablePreview">true</item>
<item name="android:editTextBackground">@drawable/edit_text</item>
<!-- Allow drawing under the system bars background -->
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:fitsSystemWindows">false</item>
<!-- Set system bars background transparent -->
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
<!-- Disable auto contrasted system bars background (on Android 10+) -->
<item name="android:enforceStatusBarContrast" tools:targetApi="q">false</item>
<item name="android:enforceNavigationBarContrast" tools:targetApi="q">false</item>
</style>
<style name="Share.Window" parent="Theme.AppCompat">
<item name="android:windowEnterAnimation">@null</item>
<item name="android:windowExitAnimation">@null</item>
<item name="android:editTextBackground">@drawable/edit_text</item>
</style>
<!-- BootTheme should inherit from Theme.SplashScreen -->
<style name="BootTheme" parent="Theme.SplashScreen">
<item name="windowSplashScreenBackground">@color/bootsplash_background</item>
<item name="windowSplashScreenAnimatedIcon">@mipmap/bootsplash_logo</item>
<item name="postSplashScreenTheme">@style/AppTheme</item>
</style>
<!-- Base application theme. -->
<style name="AppThemeB" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:editTextBackground">@drawable/edit_text</item>
</style>
</resources>

View File

@@ -4,4 +4,5 @@
<color name="light_blue_200">#FF81D4FA</color>
<color name="light_blue_600">#FF039BE5</color>
<color name="light_blue_900">#FF01579B</color>
<color name="bootsplash_background">#FFFFFF</color>
</resources>

View File

@@ -2,16 +2,30 @@
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowDisablePreview">true</item>
<item name="android:editTextBackground">@drawable/edit_text</item>
<!-- Allow drawing under the system bars background -->
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:fitsSystemWindows">false</item>
<!-- Set status bar background transparent -->
<item name="android:statusBarColor">@android:color/transparent</item>
<!-- Navigation bar will stay translucent on Android < 8.1 -->
<item name="android:windowTranslucentNavigation">true</item>
</style>
<style name="Share.Window" parent="Theme.AppCompat">
<item name="android:windowEnterAnimation">@null</item>
<item name="android:windowExitAnimation">@null</item>
<item name="android:editTextBackground">@drawable/edit_text</item>
</style>
<!-- BootTheme should inherit from Theme.SplashScreen -->
<style name="BootTheme" parent="Theme.SplashScreen">
<item name="windowSplashScreenBackground">@color/bootsplash_background</item>
<item name="windowSplashScreenAnimatedIcon">@mipmap/bootsplash_logo</item>
<item name="postSplashScreenTheme">@style/AppTheme</item>
</style>
<!-- Base application theme. -->
<style name="AppThemeB" parent="Theme.AppCompat.DayNight.NoActionBar">

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -1,7 +1,7 @@
module.exports = {
presets: ['module:metro-react-native-babel-preset'],
plugins: [
"transform-remove-console",
//"transform-remove-console",
"@babel/plugin-transform-named-capturing-groups-regex"
]
};

View File

@@ -3,7 +3,7 @@
#import <React/RCTBridge.h>
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>
#import "RNSplashScreen.h"
#import "RNBootSplash.h"
#import <React/RCTLinkingManager.h>
#import <MMKV.h>
@implementation AppDelegate
@@ -53,12 +53,7 @@ RCTBridge *bridge;
self.window.rootViewController = navController;
[self.window makeKeyAndVisible];
if (url != nil) {
[RNSplashScreen hide];
} else {
[RNSplashScreen show];
}
[RNBootSplash initWithStoryboard:@"BootSplash" rootView:rootView];
return YES;
}

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17147" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17120"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
<!--View Controller-->
<scene sceneID="EHf-IW-A2E">
<objects>
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
<view key="view" autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" id="Ze5-6b-2t3">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<imageView autoresizesSubviews="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" image="BootSplashLogo" translatesAutoresizingMaskIntoConstraints="NO" id="3lX-Ut-9ad">
<rect key="frame" x="87.5" y="233.5" width="200" height="200"/>
<accessibility key="accessibilityConfiguration">
<accessibilityTraits key="traits" image="YES" notEnabled="YES"/>
</accessibility>
</imageView>
</subviews>
<viewLayoutGuide key="safeArea" id="Bcu-3y-fUS"/>
<color key="backgroundColor" red="1.00000000000000" green="1.00000000000000" blue="1.00000000000000" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<accessibility key="accessibilityConfiguration">
<accessibilityTraits key="traits" notEnabled="YES"/>
</accessibility>
<constraints>
<constraint firstItem="3lX-Ut-9ad" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="Fh9-Fy-1nT"/>
<constraint firstItem="3lX-Ut-9ad" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="nvB-Ic-PnI"/>
</constraints>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="0.0" y="0.0"/>
</scene>
</scenes>
<resources>
<image name="BootSplashLogo" width="200" height="200"/>
</resources>
</document>

View File

@@ -0,0 +1,23 @@
{
"images": [
{
"idiom": "universal",
"filename": "bootsplash_logo.png",
"scale": "1x"
},
{
"idiom": "universal",
"filename": "bootsplash_logo@2x.png",
"scale": "2x"
},
{
"idiom": "universal",
"filename": "bootsplash_logo@3x.png",
"scale": "3x"
}
],
"info": {
"version": 1,
"author": "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
<device id="retina6_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17703"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
<!--View Controller-->
<scene sceneID="EHf-IW-A2E">
<objects>
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
<rect key="frame" x="0.0" y="0.0" width="428" height="926"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="notesnook-text.png" translatesAutoresizingMaskIntoConstraints="NO" id="2H9-jf-dzi">
<rect key="frame" x="124" y="373" width="180" height="180"/>
<constraints>
<constraint firstAttribute="width" secondItem="2H9-jf-dzi" secondAttribute="height" multiplier="1:1" id="EdT-Pq-83y"/>
<constraint firstAttribute="width" constant="180" id="nd0-2H-QGj"/>
<constraint firstAttribute="height" constant="180" id="z5E-nC-rqe"/>
</constraints>
</imageView>
</subviews>
<viewLayoutGuide key="safeArea" id="Bcu-3y-fUS"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="2H9-jf-dzi" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="30o-35-Tw6"/>
<constraint firstItem="2H9-jf-dzi" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="79Q-Ky-afv"/>
<constraint firstItem="2H9-jf-dzi" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="EJb-0J-TWE"/>
<constraint firstItem="2H9-jf-dzi" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="tJL-Yf-xzq"/>
</constraints>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="52.173913043478265" y="375"/>
</scene>
</scenes>
<resources>
<image name="notesnook-text.png" width="1280" height="1280"/>
</resources>
</document>

View File

@@ -0,0 +1,27 @@
diff --git a/node_modules/react-native-reanimated/android/build.gradle b/node_modules/react-native-reanimated/android/build.gradle
index 21c386c..bb2b2af 100644
--- a/node_modules/react-native-reanimated/android/build.gradle
+++ b/node_modules/react-native-reanimated/android/build.gradle
@@ -18,7 +18,6 @@ buildscript {
}
apply plugin: 'com.android.library'
-apply plugin: 'maven'
android {
compileSdkVersion safeExtGet('compileSdkVersion', 28)
@@ -120,14 +119,4 @@ afterEvaluate { project ->
archives androidSourcesJar
archives androidJavadocJar
}
-
- task installArchives(type: Upload) {
- configuration = configurations.archives
- repositories.mavenDeployer {
- // Deploy to react-native-event-bridge/maven, ready to publish to npm
- repository url: "file://${projectDir}/../android/maven"
-
- configureReactNativePom pom
- }
- }
}

View File

@@ -0,0 +1,28 @@
diff --git a/node_modules/react-native-securerandom/android/build.gradle b/node_modules/react-native-securerandom/android/build.gradle
index e21cdf0..dce08df 100644
--- a/node_modules/react-native-securerandom/android/build.gradle
+++ b/node_modules/react-native-securerandom/android/build.gradle
@@ -16,8 +16,6 @@ buildscript {
}
apply plugin: 'com.android.library'
-apply plugin: 'maven'
-
def safeExtGet(prop, fallback) {
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
}
@@ -116,14 +114,4 @@ afterEvaluate { project ->
archives androidSourcesJar
archives androidJavadocJar
}
-
- task installArchives(type: Upload) {
- configuration = configurations.archives
- repositories.mavenDeployer {
- // Deploy to react-native-event-bridge/maven, ready to publish to npm
- repository url: "file://${projectDir}/../android/maven"
-
- configureReactNativePom pom
- }
- }
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,8 @@
import React, {Component} from 'react';
import {Appearance, SafeAreaView} from 'react-native';
import SplashScreen from 'react-native-splash-screen';
import React, { Component } from 'react';
import { Appearance, SafeAreaView } from 'react-native';
import RNBootSplash from "react-native-bootsplash";
import { COLOR_SCHEME_DARK, COLOR_SCHEME_LIGHT } from '../src/utils/Colors';
import NotesnookShare from './index';
import {COLOR_SCHEME_DARK, COLOR_SCHEME_LIGHT} from '../src/utils/Colors';
export default class QuickNoteIOS extends Component {
constructor(props, context) {
@@ -17,7 +17,7 @@ export default class QuickNoteIOS extends Component {
}
componentDidMount() {
SplashScreen.hide();
RNBootSplash.hide({fade:true})
}
render() {

View File

@@ -2,36 +2,37 @@ import {
activateKeepAwake,
deactivateKeepAwake
} from '@sayem314/react-native-keep-awake';
import React, { useEffect, useRef } from 'react';
import { View } from 'react-native';
import Animated, { useValue } from 'react-native-reanimated';
import { notesnook } from '../../e2e/test.ids';
import React, {useEffect, useRef} from 'react';
import {View} from 'react-native';
import {StatusBar} from 'react-native-bars';
import Animated, {useValue} from 'react-native-reanimated';
import {notesnook} from '../../e2e/test.ids';
import CustomTabs from '../components/CustomTabs';
import { DialogManager } from '../components/DialogManager';
import { Menu } from '../components/Menu';
import { Toast } from '../components/Toast';
import { useTracked } from '../provider';
import { useEditorStore, useSettingStore } from '../provider/stores';
import { DDS } from '../services/DeviceDetection';
import {DialogManager} from '../components/DialogManager';
import {Menu} from '../components/Menu';
import {Toast} from '../components/Toast';
import {useTracked} from '../provider';
import {useEditorStore, useSettingStore} from '../provider/stores';
import {DDS} from '../services/DeviceDetection';
import {
eSendEvent,
eSubscribeEvent,
eUnSubscribeEvent
} from '../services/EventManager';
import { editing, setWidthHeight } from '../utils';
import { updateStatusBarColor } from '../utils/Colors';
import {editing, setWidthHeight} from '../utils';
import {updateStatusBarColor} from '../utils/Colors';
import {
eClearEditor,
eCloseFullscreenEditor,
eOnLoadNote,
eOpenFullscreenEditor
} from '../utils/Events';
import { editorRef, tabBarRef } from '../utils/Refs';
import { sleep } from '../utils/TimeUtils';
import { EditorWrapper } from '../views/Editor/EditorWrapper';
import { checkStatus, EditorWebView, getNote } from '../views/Editor/Functions';
import {editorRef, tabBarRef} from '../utils/Refs';
import {sleep} from '../utils/TimeUtils';
import {EditorWrapper} from '../views/Editor/EditorWrapper';
import {checkStatus, EditorWebView, getNote} from '../views/Editor/Functions';
import tiny from '../views/Editor/tiny/tiny';
import { NavigatorStack } from './NavigatorStack';
import {NavigatorStack} from './NavigatorStack';
let layoutTimer = null;
const onChangeTab = async obj => {
@@ -54,7 +55,7 @@ const onChangeTab = async obj => {
if (getNote()) {
await checkStatus();
}
sleep(1000).then(() => {
sleep(1000).then(() => {
updateStatusBarColor();
});
} else {
@@ -62,7 +63,7 @@ const onChangeTab = async obj => {
updateStatusBarColor();
deactivateKeepAwake();
eSendEvent(eClearEditor, 'removeHandler');
setTimeout(() => useEditorStore.getState().setSearchReplace(false),1);
setTimeout(() => useEditorStore.getState().setSearchReplace(false), 1);
if (getNote()?.locked) {
eSendEvent(eClearEditor);
}
@@ -305,6 +306,9 @@ const NativeStack = React.memo(
const listItems = [
<View
onLayout={() => {
tabBarRef.current?.goToIndex(1,false);
}}
style={{
height: '100%',
width: fullscreen ? 0 : widths[deviceMode].a
@@ -340,6 +344,7 @@ const NativeStack = React.memo(
<EditorWrapper width={widths} dimensions={dimensions} />
];
return (
<View
onLayout={_onLayout}
@@ -349,6 +354,10 @@ const NativeStack = React.memo(
height: '100%',
backgroundColor: colors.bg
}}>
<StatusBar
animated="true"
barStyle={colors.night ? 'light-content' : 'dark-content'}
/>
{deviceMode ? (
<CustomTabs
ref={tabBarRef}

View File

@@ -1,10 +1,8 @@
import {DrawerActions, StackActions} from '@react-navigation/native';
import {updateEvent} from '../components/DialogManager/recievers';
import {Actions} from '../provider/Actions';
import { StackActions } from '@react-navigation/native';
import { useFavoriteStore, useNotebookStore, useNoteStore, useTagStore, useTrashStore } from '../provider/stores';
import {eOnNewTopicAdded, refreshNotesPage} from '../utils/Events';
import {rootNavigatorRef, sideMenuRef, tabBarRef} from '../utils/Refs';
import {eSendEvent} from './EventManager';
import { eOnNewTopicAdded, refreshNotesPage } from '../utils/Events';
import { rootNavigatorRef, tabBarRef } from '../utils/Refs';
import { eSendEvent } from './EventManager';
import SettingsService from './SettingsService';
let currentScreen = 'Notes';

View File

@@ -1,11 +1,11 @@
import {eSendEvent} from '../services/EventManager';
import {eThemeUpdated} from './Events';
import {Platform, StatusBar} from 'react-native';
import {NativeModules, Platform, StatusBar} from 'react-native';
import {AndroidModule} from '.';
export const ACCENT = {
color: '#008837',
shade: '#00883712',
shade: '#00883712'
};
export const COLORS_NOTE = {
@@ -15,7 +15,7 @@ export const COLORS_NOTE = {
green: '#4CAF50',
blue: '#2196F3',
purple: '#673AB7',
gray: '#9E9E9E',
gray: '#9E9E9E'
};
const fixedColors = {
@@ -38,7 +38,7 @@ const fixedColors = {
blue: '#2196F3',
purple: '#673AB7',
gray: '#9E9E9E',
discord:"#5865F2"
discord: '#5865F2'
};
export var COLOR_SCHEME = {
...fixedColors,
@@ -48,7 +48,7 @@ export var COLOR_SCHEME = {
nav: '#f7f7f7',
pri: '#424242',
sec: 'white',
light: '#ffffff',
light: '#ffffff'
};
export const COLOR_SCHEME_LIGHT = {
@@ -63,8 +63,8 @@ export const COLOR_SCHEME_LIGHT = {
sec: '#ffffff',
light: '#ffffff',
transGray: '#00000010',
border:"#E8E8E8",
placeholder:"#a9a9a9"
border: '#E8E8E8',
placeholder: '#a9a9a9'
};
export const COLOR_SCHEME_PITCH_BLACK = {
...fixedColors,
@@ -78,8 +78,8 @@ export const COLOR_SCHEME_PITCH_BLACK = {
sec: 'black',
light: '#ffffff',
transGray: '#ffffff10',
border:"#383838",
placeholder:"#404040"
border: '#383838',
placeholder: '#404040'
};
export const COLOR_SCHEME_DARK = {
@@ -94,8 +94,8 @@ export const COLOR_SCHEME_DARK = {
sec: 'black',
light: '#ffffff',
transGray: '#ffffff10',
border:"#383838",
placeholder:"#404040"
border: '#383838',
placeholder: '#404040'
};
export function getCurrentColors() {
@@ -107,9 +107,9 @@ export function setColorScheme(colors = COLOR_SCHEME, accent = ACCENT) {
StatusBar.setBarStyle(
COLOR_SCHEME.night ? 'light-content' : 'dark-content',
true,
true
);
if (Platform.OS === 'android') {
AndroidModule.setBackgroundColor(COLOR_SCHEME.bg);
StatusBar.setBackgroundColor('transparent', true);
@@ -130,7 +130,7 @@ export function setAccentColor(color) {
export function updateStatusBarColor() {
StatusBar.setBarStyle(
COLOR_SCHEME.night ? 'light-content' : 'dark-content',
true,
true
);
if (Platform.OS === 'android') {
StatusBar.setBackgroundColor('transparent', true);

View File

@@ -1,6 +1,6 @@
import NetInfo from '@react-native-community/netinfo';
import {EV, EVENTS} from 'notes-core/common';
import React, {useEffect, useRef} from 'react';
import { EV, EVENTS } from 'notes-core/common';
import React, { useEffect, useRef } from 'react';
import {
Appearance,
AppState,
@@ -12,10 +12,9 @@ import {
} from 'react-native';
import RNExitApp from 'react-native-exit-app';
import * as RNIap from 'react-native-iap';
import {enabled} from 'react-native-privacy-snapshot';
import SplashScreen from 'react-native-splash-screen';
import {doInBackground, editing} from '.';
import {ProFeatures} from '../components/ResultDialog/pro-features';
import { enabled } from 'react-native-privacy-snapshot';
import { doInBackground, editing } from '.';
import { ProFeatures } from '../components/ResultDialog/pro-features';
import {
clearAllStores,
initialize,
@@ -49,17 +48,17 @@ import {
updateNoteInEditor
} from '../views/Editor/Functions';
import tiny from '../views/Editor/tiny/tiny';
import {updateStatusBarColor} from './Colors';
import {db} from './database';
import { updateStatusBarColor } from './Colors';
import { db } from './database';
import {
eClearEditor,
eCloseProgressDialog,
eOpenLoginDialog,
refreshNotesPage
} from './Events';
import {MMKV} from './mmkv';
import { MMKV } from './mmkv';
import Storage from './storage';
import {sleep} from './TimeUtils';
import { sleep } from './TimeUtils';
const SodiumEventEmitter = new NativeEventEmitter(NativeModules.Sodium);
@@ -261,7 +260,7 @@ export const useAppEvents = () => {
eSendEvent(eCloseProgressDialog);
},
icon: 'check',
actionText: 'Continue',
actionText: 'Continue'
});
}
await PremiumService.setPremiumStatus();
@@ -313,7 +312,7 @@ export const useAppEvents = () => {
eSendEvent(eOpenLoginDialog);
},
icon: 'logout',
actionText: 'Login',
actionText: 'Login'
});
setTimeout(() => {
@@ -444,22 +443,13 @@ export const useAppEvents = () => {
) {
refValues.current.showingDialog = true;
refValues.current.prevState = 'active';
if (Platform.OS === 'android') {
SplashScreen.show();
} else {
eSendEvent('load_overlay', 'hide');
}
eSendEvent('load_overlay', 'hide');
let result = await BiometricService.validateUser(
'Unlock to access your notes'
);
if (result) {
refValues.current.showingDialog = false;
if (Platform.OS === 'android') {
SplashScreen.hide();
} else {
eSendEvent('load_overlay', 'show');
}
eSendEvent('load_overlay', 'show');
} else {
RNExitApp.exitApp();
return;
@@ -557,7 +547,7 @@ export const useAppEvents = () => {
eSendEvent(refreshNotesPage);
}
if (notesAddedFromIntent || shareExtensionOpened) {
eSendEvent("loadingNote",getNote());
eSendEvent('loadingNote', getNote());
eSendEvent('webviewreset', true);
MMKV.removeItem('shareExtensionOpened');
}

View File

@@ -1,19 +1,19 @@
import React, {useCallback, useEffect} from 'react';
import {ContainerBottomButton} from '../../components/Container/ContainerBottomButton';
import {ContainerTopSection} from '../../components/Container/ContainerTopSection';
import {Header} from '../../components/Header/index';
import React, { useCallback, useEffect } from 'react';
import { ContainerBottomButton } from '../../components/Container/ContainerBottomButton';
import { ContainerTopSection } from '../../components/Container/ContainerTopSection';
import { Header } from '../../components/Header/index';
import SelectionHeader from '../../components/SelectionHeader';
import SimpleList from '../../components/SimpleList';
import {useNoteStore} from '../../provider/stores';
import {DDS} from '../../services/DeviceDetection';
import {eSendEvent} from '../../services/EventManager';
import { useNoteStore } from '../../provider/stores';
import { DDS } from '../../services/DeviceDetection';
import { eSendEvent } from '../../services/EventManager';
import Navigation from '../../services/Navigation';
import SearchService from '../../services/SearchService';
import {editing, InteractionManager, scrollRef} from '../../utils';
import {db} from '../../utils/database';
import {eOnLoadNote} from '../../utils/Events';
import {tabBarRef} from '../../utils/Refs';
import {getNote} from '../Editor/Functions';
import { editing, InteractionManager, scrollRef } from '../../utils';
import { db } from '../../utils/database';
import { eOnLoadNote } from '../../utils/Events';
import { tabBarRef } from '../../utils/Refs';
import { getNote } from '../Editor/Functions';
export const Home = ({navigation}) => {
const notes = useNoteStore(state => state.notes);

View File

@@ -14,7 +14,7 @@
"esModuleInterop": true,
"skipLibCheck": false
},
"include": ["./node_modules/notes-core"],
"include": ["./node_modules/notes-core","."],
"exclude": [
"node_modules",
"babel.config.js",

BIN
apps/mobile/welcomebg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 964 KiB