mirror of
https://github.com/streetwriters/notesnook.git
synced 2026-02-23 19:49:56 +01:00
mobile: make e2e tests work on android & iOS
This commit is contained in:
1
apps/mobile/.gitignore
vendored
1
apps/mobile/.gitignore
vendored
@@ -13,6 +13,7 @@ build_cache/
|
||||
.npmrc
|
||||
.yarnrc.yml
|
||||
.yarn
|
||||
*.log
|
||||
|
||||
|
||||
# Xcode
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"entities": "^3.0.1",
|
||||
"html-to-text": "8.1.0",
|
||||
"phone": "^3.1.14",
|
||||
"qclone": "^1.1.0",
|
||||
"react-native-actions-sheet": "^0.7.2",
|
||||
"react-native-check-version": "https://github.com/flexible-agency/react-native-check-version",
|
||||
"react-native-drax": "^0.10.2",
|
||||
|
||||
@@ -5,5 +5,12 @@
|
||||
"testTimeout": 120000,
|
||||
"testRegex": "\\.e2e\\.js$",
|
||||
"reporters": ["detox/runners/jest/streamlineReporter"],
|
||||
"transformIgnorePatterns": ["<rootDir>/node_modules/"],
|
||||
"transform": {
|
||||
"^.+\\.(js|jsx|ts|tsx)$": [
|
||||
"babel-jest",
|
||||
{ "configFile": "../native/babel.config.js" }
|
||||
]
|
||||
},
|
||||
"verbose": true
|
||||
}
|
||||
|
||||
@@ -17,11 +17,18 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import {
|
||||
const {
|
||||
DetoxCircusEnvironment,
|
||||
SpecReporter,
|
||||
WorkerAssignReporter
|
||||
} from "detox/runners/jest-circus";
|
||||
} = require("detox/runners/jest-circus");
|
||||
|
||||
const sleep = (duration) =>
|
||||
new Promise((resolve) =>
|
||||
setTimeout(() => {
|
||||
resolve();
|
||||
}, duration)
|
||||
);
|
||||
|
||||
class CustomDetoxEnvironment extends DetoxCircusEnvironment {
|
||||
constructor(config, context) {
|
||||
@@ -37,6 +44,14 @@ class CustomDetoxEnvironment extends DetoxCircusEnvironment {
|
||||
WorkerAssignReporter
|
||||
});
|
||||
}
|
||||
|
||||
async initDetox() {
|
||||
const instance = await this.detox.init(undefined, { launchApp: false });
|
||||
await sleep(10000);
|
||||
await instance.device.reverseTcpPort(8081); // added this line
|
||||
await instance.device.launchApp();
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = CustomDetoxEnvironment;
|
||||
|
||||
@@ -272,7 +272,7 @@ describe("NOTEBOOKS", () => {
|
||||
await visibleByText("Notebook 1");
|
||||
});
|
||||
|
||||
it.only("Pin topic to side menu", async () => {
|
||||
it("Pin topic to side menu", async () => {
|
||||
await prepare();
|
||||
await navigate("Notebooks");
|
||||
await tapByText("Skip introduction");
|
||||
|
||||
@@ -21,7 +21,7 @@ import { notesnook } from "../test.ids";
|
||||
import { readFileSync } from "fs";
|
||||
import { expect as jestExpect } from "@jest/globals";
|
||||
import { toMatchImageSnapshot } from "jest-image-snapshot";
|
||||
import { device as _device, web } from "detox";
|
||||
import { device as _device } from "detox";
|
||||
jestExpect.extend({ toMatchImageSnapshot });
|
||||
|
||||
const sleep = (duration) =>
|
||||
|
||||
@@ -7,6 +7,12 @@
|
||||
"device": {
|
||||
"avdName": "Pixel_5_API_31"
|
||||
}
|
||||
},
|
||||
"simulator": {
|
||||
"type": "ios.simulator",
|
||||
"device": {
|
||||
"type": "iPhone 8"
|
||||
}
|
||||
}
|
||||
},
|
||||
"apps": {
|
||||
@@ -14,13 +20,19 @@
|
||||
"type": "android.apk",
|
||||
"binaryPath": "android/app/build/outputs/apk/debug/app-x86_64-debug.apk",
|
||||
"testBinaryPath": "android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk",
|
||||
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd .."
|
||||
"build": "cd android ; ENVFILE=.env.test ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd .."
|
||||
},
|
||||
"android.release": {
|
||||
"type": "android.apk",
|
||||
"binaryPath": "android/app/build/outputs/apk/release/app-x86_64-release.apk",
|
||||
"testBinaryPath": "android/app/build/outputs/apk/androidTest/release/app-release-androidTest.apk",
|
||||
"build": "cd android ; ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release ; cd .."
|
||||
"build": "cd android ; ENVFILE=.env.test ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release ; cd .."
|
||||
},
|
||||
"ios.release": {
|
||||
"name": "Notesnook",
|
||||
"type": "ios.app",
|
||||
"binaryPath": "ios/build/Build/Products/Release-iphonesimulator/Notesnook.app",
|
||||
"build": "ENVFILE=.env.test xcodebuild -workspace ios/Notesnook.xcworkspace -scheme NotesnookRelease -sdk iphonesimulator -derivedDataPath ios/build"
|
||||
}
|
||||
},
|
||||
"configurations": {
|
||||
@@ -31,6 +43,10 @@
|
||||
"android.emu.release": {
|
||||
"app": "android.release",
|
||||
"device": "emulator"
|
||||
},
|
||||
"ios.sim.release": {
|
||||
"device": "simulator",
|
||||
"app": "ios.release"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -86,6 +86,8 @@ project.ext.react = [
|
||||
bundleCommand: "webpack-bundle",
|
||||
bundleInDebug: false,
|
||||
cliPath: "../../../node_modules/react-native/cli.js",
|
||||
hermesCommand: "../../../node_modules/react-native/sdks/hermesc/%OS-BIN%/hermesc",
|
||||
composeSourceMapsPath: "../node_modules/react-native/scripts/compose-source-maps.js"
|
||||
]
|
||||
|
||||
apply from: "../../../node_modules/react-native/react.gradle"
|
||||
@@ -158,7 +160,7 @@ android {
|
||||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
multiDexEnabled true
|
||||
versionCode 2011
|
||||
versionCode 2013
|
||||
versionName getNpmVersion()
|
||||
testBuildType System.getProperty('testBuildType', 'debug')
|
||||
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
|
||||
|
||||
@@ -28,6 +28,5 @@ const configs = {
|
||||
module.exports = function (api, opts) {
|
||||
api.cache(true);
|
||||
if (!env) env = 'production';
|
||||
console.log('babel-env:', env);
|
||||
return configs.env[env];
|
||||
};
|
||||
|
||||
@@ -1020,6 +1020,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
@@ -1049,6 +1050,7 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
INFOPLIST_FILE = NotesnookTests/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -1080,9 +1082,10 @@
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
ENABLE_BITCODE = NO;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -1153,7 +1156,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
"-ObjC",
|
||||
@@ -1182,8 +1185,9 @@
|
||||
CODE_SIGN_ENTITLEMENTS = Notesnook/Notesnook.entitlements;
|
||||
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -1254,7 +1258,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
ONLY_ACTIVE_ARCH = NO;
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
@@ -1412,9 +1416,10 @@
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
INFOPLIST_FILE = NotesWidget/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 14.4;
|
||||
@@ -1423,7 +1428,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.notewidget;
|
||||
@@ -1453,9 +1458,10 @@
|
||||
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
INFOPLIST_FILE = NotesWidget/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 14.4;
|
||||
@@ -1464,7 +1470,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.notewidget;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
@@ -1493,9 +1499,10 @@
|
||||
CODE_SIGN_ENTITLEMENTS = "Make Note/Make Note.entitlements";
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -1566,7 +1573,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.share;
|
||||
@@ -1596,9 +1603,10 @@
|
||||
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = 2011;
|
||||
CURRENT_PROJECT_VERSION = 2013;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEVELOPMENT_TEAM = 53CWBG3QUC;
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -1669,7 +1677,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 2.1.7;
|
||||
MARKETING_VERSION = 2.1.8;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.share;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
||||
@@ -0,0 +1,112 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1130"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
|
||||
BuildableName = "Notesnook.app"
|
||||
BlueprintName = "Notesnook"
|
||||
ReferencedContainer = "container:Notesnook.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "00E356ED1AD99517003FC87E"
|
||||
BuildableName = "NotesnookTests.xctest"
|
||||
BlueprintName = "NotesnookTests"
|
||||
ReferencedContainer = "container:Notesnook.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
|
||||
BuildableName = "Notesnook.app"
|
||||
BlueprintName = "Notesnook"
|
||||
ReferencedContainer = "container:Notesnook.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<EnvironmentVariables>
|
||||
<EnvironmentVariable
|
||||
key = "NSZombieEnabled"
|
||||
value = "YES"
|
||||
isEnabled = "YES">
|
||||
</EnvironmentVariable>
|
||||
<EnvironmentVariable
|
||||
key = "NSDebugEnabled"
|
||||
value = "YES"
|
||||
isEnabled = "YES">
|
||||
</EnvironmentVariable>
|
||||
<EnvironmentVariable
|
||||
key = "NSAutoreleaseFreedObjectCheckEnabled"
|
||||
value = "YES"
|
||||
isEnabled = "YES">
|
||||
</EnvironmentVariable>
|
||||
</EnvironmentVariables>
|
||||
<AdditionalOptions>
|
||||
<AdditionalOption
|
||||
key = "NSZombieEnabled"
|
||||
value = "YES"
|
||||
isEnabled = "YES">
|
||||
</AdditionalOption>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
|
||||
BuildableName = "Notesnook.app"
|
||||
BlueprintName = "Notesnook"
|
||||
ReferencedContainer = "container:Notesnook.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
@@ -62,6 +62,7 @@ post_install do |installer|
|
||||
installer.pods_project.targets.each do |target|
|
||||
target.build_configurations.each do |config|
|
||||
config.build_settings['APPLICATION_EXTENSION_API_ONLY'] = 'NO'
|
||||
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -723,6 +723,6 @@ SPEC CHECKSUMS:
|
||||
toolbar-android: 2a73856e98b750d7e71ce4644d3f41cc98211719
|
||||
Yoga: ff994563b2fd98c982ca58e8cd9db2cdaf4dda74
|
||||
|
||||
PODFILE CHECKSUM: faa0157d6086260127a3504602678c132d34fc31
|
||||
PODFILE CHECKSUM: ea431d42176787211e07fa94076836be481c8bb8
|
||||
|
||||
COCOAPODS: 1.11.3
|
||||
|
||||
@@ -3,20 +3,6 @@
|
||||
"private": true,
|
||||
"version": "1.0.0",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"run-android": "REACT_NATIVE_DEPENDENCIES=$HOME/Repos/notesnook-mobile/rn-build-deps/ react-native run-android --active-arch-only",
|
||||
"release": "react-native run-android --variant=release",
|
||||
"run-ios": "react-native run-ios",
|
||||
"start": "react-native start",
|
||||
"repack": "react-native webpack-start",
|
||||
"test": "jest --forceExit",
|
||||
"lint": "eslint .",
|
||||
"build-detox-android": "REACT_NATIVE_DEPENDENCIES=$HOME/Repos/notesnook-mobile/rn-build-deps/ ENVFILE=.env.test detox build -c android.emu.debug",
|
||||
"test-android": "adb reverse tcp:8081 tcp:8081 && yarn detox test --configuration android.emu.debug --detectOpenHandles",
|
||||
"test-android-release": "detox test --configuration android.emu.release",
|
||||
"bump": "npx react-native bump-version --skip-semver-for android",
|
||||
"online": "adb reverse tcp:8081 tcp:8081 && adb reverse tcp:3000 tcp:3000"
|
||||
},
|
||||
"dependencies": {
|
||||
"@callstack/repack": "^3.0.0-next.7",
|
||||
"@react-native-clipboard/clipboard": "^1.9.0",
|
||||
|
||||
@@ -29,7 +29,7 @@ module.exports = (env) => {
|
||||
bundleFilename = undefined,
|
||||
sourceMapFilename = undefined,
|
||||
assetsPath = undefined,
|
||||
reactNativePath = require.resolve("react-native"),
|
||||
reactNativePath = path.join(__dirname, "../node_modules/react-native"),
|
||||
} = env;
|
||||
|
||||
if (!platform) {
|
||||
@@ -80,10 +80,12 @@ module.exports = (env) => {
|
||||
* structure. For simple/typical project you won't need it.
|
||||
*/
|
||||
alias: {
|
||||
//'react-native': reactNativePath,
|
||||
'react-native': reactNativePath,
|
||||
"react": path.join(__dirname, "../node_modules/react"),
|
||||
"react-dom": path.join(__dirname, "../node_modules/react-dom"),
|
||||
"@notesnook/editor": path.join(__dirname, "../../../packages/editor"),
|
||||
"@notesnook": path.join(__dirname, "../../../packages"),
|
||||
"showdown": path.join(__dirname, "../node_modules/showdown"),
|
||||
"qclone": path.join(__dirname, "../node_modules/qclone"),
|
||||
},
|
||||
},
|
||||
/**
|
||||
|
||||
3643
apps/mobile/package-lock.json
generated
3643
apps/mobile/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,28 +1,30 @@
|
||||
{
|
||||
"name": "@notesnook/mobile",
|
||||
"version": "2.1.7",
|
||||
"version": "2.1.8",
|
||||
"private": true,
|
||||
"workspaces": [
|
||||
"native/",
|
||||
"app/"
|
||||
],
|
||||
"scripts": {
|
||||
"postinstall": "yarn patch-package",
|
||||
"patch-lib": "./scripts/patch-package.sh",
|
||||
"run-android": "cd native && REACT_NATIVE_DEPENDENCIES=$HOME/Repos/notesnook-mobile/rn-build-deps/ react-native run-android --active-arch-only",
|
||||
"run-android": "cd native && react-native run-android --active-arch-only",
|
||||
"run-ios": "cd native && react-native run-ios",
|
||||
"start": "cd native && react-native start",
|
||||
"repack": "cd native && react-native webpack-start",
|
||||
"install-pods": "cd native/ios && pod install"
|
||||
"install-pods": "cd native/ios && pod install",
|
||||
"build-ios": "cd native && detox build -c ios.sim.release",
|
||||
"build-android": "cd native && detox build -c android.emu.release",
|
||||
"e2e-android": "cd native && detox test --configuration android.emu.release --detectOpenHandles",
|
||||
"e2e-ios": "cd native && detox test -c ios.sim.release --detectOpenHandles",
|
||||
"bump": "npx react-native bump-version --skip-semver-for android"
|
||||
},
|
||||
"devDependencies": {
|
||||
"patch-package": "^6.4.7",
|
||||
"postinstall-postinstall": "^2.1.0",
|
||||
"typescript": "^4.8.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"@notesnook/core": "*",
|
||||
"@notesnook/editor": "*",
|
||||
"@notesnook/editor-mobile": "*",
|
||||
"@notesnook/core": "*"
|
||||
"@notesnook/editor-mobile": "*"
|
||||
}
|
||||
}
|
||||
|
||||
13
apps/mobile/patches/@callstack+repack+3.0.0-next.7.patch
Normal file
13
apps/mobile/patches/@callstack+repack+3.0.0-next.7.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
diff --git a/node_modules/@callstack/repack/android/build.gradle b/node_modules/@callstack/repack/android/build.gradle
|
||||
index e41f2f3..b04735e 100644
|
||||
--- a/node_modules/@callstack/repack/android/build.gradle
|
||||
+++ b/node_modules/@callstack/repack/android/build.gradle
|
||||
@@ -29,7 +29,7 @@ android {
|
||||
compileSdkVersion getExtOrIntegerDefault('compileSdkVersion')
|
||||
buildToolsVersion getExtOrDefault('buildToolsVersion')
|
||||
defaultConfig {
|
||||
- minSdkVersion 16
|
||||
+ minSdkVersion 21
|
||||
targetSdkVersion getExtOrIntegerDefault('targetSdkVersion')
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
@@ -348,7 +348,7 @@ index 063582c..472019c 100644
|
||||
+endif ()
|
||||
\ No newline at end of file
|
||||
diff --git a/node_modules/react-native-reanimated/android/build.gradle b/node_modules/react-native-reanimated/android/build.gradle
|
||||
index dfb79c8..51875ce 100644
|
||||
index dfb79c8..323e5ec 100644
|
||||
--- a/node_modules/react-native-reanimated/android/build.gradle
|
||||
+++ b/node_modules/react-native-reanimated/android/build.gradle
|
||||
@@ -1,10 +1,9 @@
|
||||
@@ -656,15 +656,16 @@ index dfb79c8..51875ce 100644
|
||||
_stackProtectorFlag ? (cppFlags("-fstack-protector-all")) : null
|
||||
}
|
||||
}
|
||||
@@ -411,6 +238,7 @@ android {
|
||||
@@ -411,6 +238,8 @@ android {
|
||||
"**/libhermes.so",
|
||||
"**/libreactnativejni.so",
|
||||
"**/libjscexecutor.so",
|
||||
+ "**/libv8executor.so",
|
||||
+ "META-INF/MANIFEST.MF"
|
||||
]
|
||||
}
|
||||
tasks.withType(JavaCompile) {
|
||||
@@ -435,7 +263,7 @@ task cleanCmakeCache() {
|
||||
@@ -435,7 +264,7 @@ task cleanCmakeCache() {
|
||||
}
|
||||
|
||||
task printVersions {
|
||||
@@ -673,7 +674,7 @@ index dfb79c8..51875ce 100644
|
||||
println "Gradle: ${project.gradle.gradleVersion}"
|
||||
}
|
||||
|
||||
@@ -446,10 +274,10 @@ task Log {
|
||||
@@ -446,10 +275,10 @@ task Log {
|
||||
task applyJavaPatches(type: Copy) {
|
||||
def patchDirectory = file("${projectDir}/rnVersionPatch/${rnMinorVersion}")
|
||||
if (patchDirectory.exists()) {
|
||||
@@ -686,7 +687,7 @@ index dfb79c8..51875ce 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -643,7 +471,7 @@ task extractSOFiles {
|
||||
@@ -643,7 +472,7 @@ task extractSOFiles {
|
||||
task packageNdkLibs(type: Copy) {
|
||||
from("$buildDir/reanimated-ndk/all")
|
||||
include("**/libreanimated.so")
|
||||
@@ -695,7 +696,7 @@ index dfb79c8..51875ce 100644
|
||||
include("**/libturbomodulejsijni.so")
|
||||
}
|
||||
into("$projectDir/src/main/jniLibs")
|
||||
@@ -668,8 +496,7 @@ dependencies {
|
||||
@@ -668,8 +497,7 @@ dependencies {
|
||||
implementation "com.facebook.yoga:proguard-annotations:1.19.0"
|
||||
if (isDeveloperMode()) {
|
||||
implementation "com.facebook.fbjni:fbjni:" + FBJNI_VERSION
|
||||
@@ -705,7 +706,7 @@ index dfb79c8..51875ce 100644
|
||||
implementation "com.facebook.fbjni:fbjni-java-only:" + FBJNI_VERSION
|
||||
}
|
||||
implementation "com.facebook.react:react-native:+" // From node_modules
|
||||
@@ -677,6 +504,11 @@ dependencies {
|
||||
@@ -677,6 +505,11 @@ dependencies {
|
||||
extractHeaders("com.facebook.fbjni:fbjni:" + FBJNI_VERSION + ":headers")
|
||||
extractSO("com.facebook.fbjni:fbjni:" + FBJNI_VERSION)
|
||||
|
||||
@@ -717,7 +718,7 @@ index dfb79c8..51875ce 100644
|
||||
def buildType = "debug"
|
||||
tasks.all({ task ->
|
||||
if (task.name == "buildCMakeRelease") {
|
||||
@@ -688,25 +520,33 @@ dependencies {
|
||||
@@ -688,25 +521,33 @@ dependencies {
|
||||
rnAarMatcher = "**/**/*.aar"
|
||||
}
|
||||
def rnAAR = fileTree("$reactNative/android").matching({ it.include rnAarMatcher }).singleFile
|
||||
@@ -758,7 +759,7 @@ index dfb79c8..51875ce 100644
|
||||
buildTasks.forEach { task -> task.dependsOn(dependsOnTask) }
|
||||
}
|
||||
|
||||
@@ -717,11 +557,30 @@ afterEvaluate {
|
||||
@@ -717,11 +558,30 @@ afterEvaluate {
|
||||
nativeBuildDependsOn(prepareThirdPartyNdkHeaders)
|
||||
nativeBuildDependsOn(extractAARHeaders)
|
||||
nativeBuildDependsOn(extractSOFiles)
|
||||
|
||||
@@ -8,11 +8,16 @@
|
||||
"build:web": "nx build @notesnook/web",
|
||||
"start:web": "nx start @notesnook/web",
|
||||
"install:web": "lerna add --scope=@notesnook/web ",
|
||||
"install:mobile": "lerna add --scope=@notesnook/mobile ",
|
||||
"test:web": "nx test @notesnook/web",
|
||||
"test:core": "nx test @notesnook/core",
|
||||
"start:android": "nx run-android @notesnook/mobile",
|
||||
"start:ios": "nx run-ios @notesnook/mobile",
|
||||
"prepare:ios": "nx install-pods @notesnook/mobile",
|
||||
"build:ios": "nx build-ios @notesnook/mobile",
|
||||
"build:android": "nx build-android @notesnook/mobile",
|
||||
"test:ios": "nx e2e-ios @notesnook/mobile",
|
||||
"test:android": "nx e2e-android @notesnook/mobile",
|
||||
"start:metro": "nx start @notesnook/mobile",
|
||||
"start:repack": "nx repack @notesnook/mobile",
|
||||
"start:editor-mobile": "nx start @notesnook/editor-mobile",
|
||||
|
||||
Reference in New Issue
Block a user