Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1edeb00631 | ||
|
|
d422c1ff1e | ||
|
|
28b330ad4c | ||
|
|
a867513212 | ||
|
|
14a6341fae | ||
|
|
645f1307f3 | ||
|
|
3f16bd6465 | ||
|
|
5c15d730b3 | ||
|
|
603bf10154 | ||
|
|
57f9e0e08e | ||
|
|
597a348eab | ||
|
|
8860581450 | ||
|
|
a92ff581ae | ||
|
|
cd2e333caa | ||
|
|
4ba83b8efc | ||
|
|
e4daccfe5e | ||
|
|
76c45623a0 | ||
|
|
e4b93ec8c8 |
3
.editorconfig
Normal file
3
.editorconfig
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Windows files
|
||||||
|
[*.bat]
|
||||||
|
end_of_line = crlf
|
||||||
4
.gitattributes
vendored
4
.gitattributes
vendored
@@ -1 +1,3 @@
|
|||||||
*.pbxproj -text
|
# Windows files should use crlf line endings
|
||||||
|
# https://help.github.com/articles/dealing-with-line-endings/
|
||||||
|
*.bat text eol=crlf
|
||||||
|
|||||||
39
Gemfile.lock
39
Gemfile.lock
@@ -6,21 +6,21 @@ GEM
|
|||||||
public_suffix (>= 2.0.2, < 5.0)
|
public_suffix (>= 2.0.2, < 5.0)
|
||||||
artifactory (3.0.15)
|
artifactory (3.0.15)
|
||||||
atomos (0.1.3)
|
atomos (0.1.3)
|
||||||
aws-eventstream (1.1.0)
|
aws-eventstream (1.1.1)
|
||||||
aws-partitions (1.426.0)
|
aws-partitions (1.434.0)
|
||||||
aws-sdk-core (3.112.0)
|
aws-sdk-core (3.113.0)
|
||||||
aws-eventstream (~> 1, >= 1.0.2)
|
aws-eventstream (~> 1, >= 1.0.2)
|
||||||
aws-partitions (~> 1, >= 1.239.0)
|
aws-partitions (~> 1, >= 1.239.0)
|
||||||
aws-sigv4 (~> 1.1)
|
aws-sigv4 (~> 1.1)
|
||||||
jmespath (~> 1.0)
|
jmespath (~> 1.0)
|
||||||
aws-sdk-kms (1.42.0)
|
aws-sdk-kms (1.43.0)
|
||||||
aws-sdk-core (~> 3, >= 3.112.0)
|
aws-sdk-core (~> 3, >= 3.112.0)
|
||||||
aws-sigv4 (~> 1.1)
|
aws-sigv4 (~> 1.1)
|
||||||
aws-sdk-s3 (1.88.0)
|
aws-sdk-s3 (1.92.0)
|
||||||
aws-sdk-core (~> 3, >= 3.112.0)
|
aws-sdk-core (~> 3, >= 3.112.0)
|
||||||
aws-sdk-kms (~> 1)
|
aws-sdk-kms (~> 1)
|
||||||
aws-sigv4 (~> 1.1)
|
aws-sigv4 (~> 1.1)
|
||||||
aws-sigv4 (1.2.2)
|
aws-sigv4 (1.2.3)
|
||||||
aws-eventstream (~> 1, >= 1.0.2)
|
aws-eventstream (~> 1, >= 1.0.2)
|
||||||
babosa (1.0.4)
|
babosa (1.0.4)
|
||||||
claide (1.0.3)
|
claide (1.0.3)
|
||||||
@@ -35,7 +35,7 @@ GEM
|
|||||||
domain_name (0.5.20190701)
|
domain_name (0.5.20190701)
|
||||||
unf (>= 0.0.5, < 1.0.0)
|
unf (>= 0.0.5, < 1.0.0)
|
||||||
dotenv (2.7.6)
|
dotenv (2.7.6)
|
||||||
emoji_regex (3.2.1)
|
emoji_regex (3.2.2)
|
||||||
excon (0.79.0)
|
excon (0.79.0)
|
||||||
faraday (1.3.0)
|
faraday (1.3.0)
|
||||||
faraday-net_http (~> 1.0)
|
faraday-net_http (~> 1.0)
|
||||||
@@ -47,8 +47,8 @@ GEM
|
|||||||
faraday-net_http (1.0.1)
|
faraday-net_http (1.0.1)
|
||||||
faraday_middleware (1.0.0)
|
faraday_middleware (1.0.0)
|
||||||
faraday (~> 1.0)
|
faraday (~> 1.0)
|
||||||
fastimage (2.2.2)
|
fastimage (2.2.3)
|
||||||
fastlane (2.174.0)
|
fastlane (2.178.0)
|
||||||
CFPropertyList (>= 2.3, < 4.0.0)
|
CFPropertyList (>= 2.3, < 4.0.0)
|
||||||
addressable (>= 2.3, < 3.0.0)
|
addressable (>= 2.3, < 3.0.0)
|
||||||
artifactory (~> 3.0)
|
artifactory (~> 3.0)
|
||||||
@@ -72,6 +72,7 @@ GEM
|
|||||||
jwt (>= 2.1.0, < 3)
|
jwt (>= 2.1.0, < 3)
|
||||||
mini_magick (>= 4.9.4, < 5.0.0)
|
mini_magick (>= 4.9.4, < 5.0.0)
|
||||||
multipart-post (~> 2.0.0)
|
multipart-post (~> 2.0.0)
|
||||||
|
naturally (~> 2.2)
|
||||||
plist (>= 3.1.0, < 4.0.0)
|
plist (>= 3.1.0, < 4.0.0)
|
||||||
rubyzip (>= 2.0.0, < 3.0.0)
|
rubyzip (>= 2.0.0, < 3.0.0)
|
||||||
security (= 0.1.3)
|
security (= 0.1.3)
|
||||||
@@ -85,7 +86,7 @@ GEM
|
|||||||
xcodeproj (>= 1.13.0, < 2.0.0)
|
xcodeproj (>= 1.13.0, < 2.0.0)
|
||||||
xcpretty (~> 0.3.0)
|
xcpretty (~> 0.3.0)
|
||||||
xcpretty-travis-formatter (>= 0.0.3)
|
xcpretty-travis-formatter (>= 0.0.3)
|
||||||
fastlane-plugin-sentry (1.8.0)
|
fastlane-plugin-sentry (1.8.1)
|
||||||
gh_inspector (1.1.3)
|
gh_inspector (1.1.3)
|
||||||
google-api-client (0.38.0)
|
google-api-client (0.38.0)
|
||||||
addressable (~> 2.5, >= 2.5.1)
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
@@ -95,7 +96,7 @@ GEM
|
|||||||
representable (~> 3.0)
|
representable (~> 3.0)
|
||||||
retriable (>= 2.0, < 4.0)
|
retriable (>= 2.0, < 4.0)
|
||||||
signet (~> 0.12)
|
signet (~> 0.12)
|
||||||
google-apis-core (0.2.1)
|
google-apis-core (0.3.0)
|
||||||
addressable (~> 2.5, >= 2.5.1)
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
googleauth (~> 0.14)
|
googleauth (~> 0.14)
|
||||||
httpclient (>= 2.8.1, < 3.0)
|
httpclient (>= 2.8.1, < 3.0)
|
||||||
@@ -105,17 +106,17 @@ GEM
|
|||||||
rexml
|
rexml
|
||||||
signet (~> 0.14)
|
signet (~> 0.14)
|
||||||
webrick
|
webrick
|
||||||
google-apis-iamcredentials_v1 (0.1.0)
|
google-apis-iamcredentials_v1 (0.2.0)
|
||||||
google-apis-core (~> 0.1)
|
google-apis-core (~> 0.1)
|
||||||
google-apis-storage_v1 (0.2.0)
|
google-apis-storage_v1 (0.3.0)
|
||||||
google-apis-core (~> 0.1)
|
google-apis-core (~> 0.1)
|
||||||
google-cloud-core (1.5.0)
|
google-cloud-core (1.6.0)
|
||||||
google-cloud-env (~> 1.0)
|
google-cloud-env (~> 1.0)
|
||||||
google-cloud-errors (~> 1.0)
|
google-cloud-errors (~> 1.0)
|
||||||
google-cloud-env (1.4.0)
|
google-cloud-env (1.5.0)
|
||||||
faraday (>= 0.17.3, < 2.0)
|
faraday (>= 0.17.3, < 2.0)
|
||||||
google-cloud-errors (1.0.1)
|
google-cloud-errors (1.1.0)
|
||||||
google-cloud-storage (1.30.0)
|
google-cloud-storage (1.31.0)
|
||||||
addressable (~> 2.5)
|
addressable (~> 2.5)
|
||||||
digest-crc (~> 0.4)
|
digest-crc (~> 0.4)
|
||||||
google-apis-iamcredentials_v1 (~> 0.1)
|
google-apis-iamcredentials_v1 (~> 0.1)
|
||||||
@@ -123,7 +124,7 @@ GEM
|
|||||||
google-cloud-core (~> 1.2)
|
google-cloud-core (~> 1.2)
|
||||||
googleauth (~> 0.9)
|
googleauth (~> 0.9)
|
||||||
mini_mime (~> 1.0)
|
mini_mime (~> 1.0)
|
||||||
googleauth (0.15.1)
|
googleauth (0.16.0)
|
||||||
faraday (>= 0.17.3, < 2.0)
|
faraday (>= 0.17.3, < 2.0)
|
||||||
jwt (>= 1.4, < 3.0)
|
jwt (>= 1.4, < 3.0)
|
||||||
memoist (~> 0.16)
|
memoist (~> 0.16)
|
||||||
@@ -158,7 +159,7 @@ GEM
|
|||||||
ruby2_keywords (0.0.4)
|
ruby2_keywords (0.0.4)
|
||||||
rubyzip (2.3.0)
|
rubyzip (2.3.0)
|
||||||
security (0.1.3)
|
security (0.1.3)
|
||||||
signet (0.14.1)
|
signet (0.15.0)
|
||||||
addressable (~> 2.3)
|
addressable (~> 2.3)
|
||||||
faraday (>= 0.17.3, < 2.0)
|
faraday (>= 0.17.3, < 2.0)
|
||||||
jwt (>= 1.5, < 3.0)
|
jwt (>= 1.5, < 3.0)
|
||||||
|
|||||||
@@ -123,6 +123,8 @@ def jscFlavor = 'org.webkit:android-jsc:+'
|
|||||||
def enableHermes = project.ext.react.get("enableHermes", false);
|
def enableHermes = project.ext.react.get("enableHermes", false);
|
||||||
|
|
||||||
android {
|
android {
|
||||||
|
ndkVersion rootProject.ext.ndkVersion
|
||||||
|
|
||||||
compileSdkVersion rootProject.ext.compileSdkVersion
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
@@ -172,11 +174,12 @@ android {
|
|||||||
variant.outputs.each { output ->
|
variant.outputs.each { output ->
|
||||||
// For each separate APK per architecture, set a unique version code as described here:
|
// For each separate APK per architecture, set a unique version code as described here:
|
||||||
// https://developer.android.com/studio/build/configure-apk-splits.html
|
// https://developer.android.com/studio/build/configure-apk-splits.html
|
||||||
|
// Example: versionCode 1 will generate 1001 for armeabi-v7a, 1002 for x86, etc.
|
||||||
def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
|
def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
|
||||||
def abi = output.getFilter(OutputFile.ABI)
|
def abi = output.getFilter(OutputFile.ABI)
|
||||||
if (abi != null) { // null for the universal-debug, universal-release variants
|
if (abi != null) { // null for the universal-debug, universal-release variants
|
||||||
output.versionCodeOverride =
|
output.versionCodeOverride =
|
||||||
versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
|
defaultConfig.versionCode * 1000 + versionCodes.get(abi)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,5 +4,10 @@
|
|||||||
|
|
||||||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
|
||||||
|
|
||||||
<application android:usesCleartextTraffic="true" tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" />
|
<application
|
||||||
|
android:usesCleartextTraffic="true"
|
||||||
|
tools:targetApi="28"
|
||||||
|
tools:ignore="GoogleAppIndexingWarning">
|
||||||
|
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
|
||||||
|
</application>
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|||||||
@@ -22,7 +22,5 @@
|
|||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
|
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
ext {
|
ext {
|
||||||
buildToolsVersion = "28.0.3"
|
buildToolsVersion = "29.0.3"
|
||||||
minSdkVersion = 16
|
minSdkVersion = 21
|
||||||
compileSdkVersion = 28
|
compileSdkVersion = 29
|
||||||
targetSdkVersion = 28
|
targetSdkVersion = 29
|
||||||
|
ndkVersion = "20.1.5948944"
|
||||||
}
|
}
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
jcenter()
|
jcenter()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath("com.android.tools.build:gradle:3.5.2")
|
classpath("com.android.tools.build:gradle:4.1.0")
|
||||||
|
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
// in the individual module build.gradle files
|
// in the individual module build.gradle files
|
||||||
|
|||||||
@@ -25,4 +25,4 @@ android.useAndroidX=true
|
|||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
|
|
||||||
# Version of flipper SDK to use with React Native
|
# Version of flipper SDK to use with React Native
|
||||||
FLIPPER_VERSION=0.54.0
|
FLIPPER_VERSION=0.75.1
|
||||||
|
|||||||
2
android/gradlew
vendored
2
android/gradlew
vendored
@@ -82,6 +82,7 @@ esac
|
|||||||
|
|
||||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||||
|
|
||||||
|
|
||||||
# Determine the Java command to use to start the JVM.
|
# Determine the Java command to use to start the JVM.
|
||||||
if [ -n "$JAVA_HOME" ] ; then
|
if [ -n "$JAVA_HOME" ] ; then
|
||||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||||
@@ -129,6 +130,7 @@ fi
|
|||||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||||
|
|
||||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||||
|
|
||||||
# We build the pattern for arguments to be converted via cygpath
|
# We build the pattern for arguments to be converted via cygpath
|
||||||
|
|||||||
@@ -179,6 +179,7 @@
|
|||||||
00E356EB1AD99517003FC87E /* Frameworks */,
|
00E356EB1AD99517003FC87E /* Frameworks */,
|
||||||
00E356EC1AD99517003FC87E /* Resources */,
|
00E356EC1AD99517003FC87E /* Resources */,
|
||||||
BDE784ECF29EF861DBFF49D7 /* [CP] Copy Pods Resources */,
|
BDE784ECF29EF861DBFF49D7 /* [CP] Copy Pods Resources */,
|
||||||
|
476A07969B11CA4E09819AC0 /* [CP] Embed Pods Frameworks */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -202,6 +203,7 @@
|
|||||||
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
|
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
|
||||||
B9FB8FC65CEFF9AFAC71127E /* [CP] Copy Pods Resources */,
|
B9FB8FC65CEFF9AFAC71127E /* [CP] Copy Pods Resources */,
|
||||||
1DC46C84C90B4D84A18AC142 /* Upload Debug Symbols to Sentry */,
|
1DC46C84C90B4D84A18AC142 /* Upload Debug Symbols to Sentry */,
|
||||||
|
E8FF56077B675D4D92D5CC25 /* [CP] Embed Pods Frameworks */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -303,6 +305,24 @@
|
|||||||
shellPath = /bin/sh;
|
shellPath = /bin/sh;
|
||||||
shellScript = "export SENTRY_PROPERTIES=sentry.properties\n../node_modules/@sentry/cli/bin/sentry-cli upload-dsym";
|
shellScript = "export SENTRY_PROPERTIES=sentry.properties\n../node_modules/@sentry/cli/bin/sentry-cli upload-dsym";
|
||||||
};
|
};
|
||||||
|
476A07969B11CA4E09819AC0 /* [CP] Embed Pods Frameworks */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
"${PODS_ROOT}/Target Support Files/Pods-JellyfinAudioPlayer-JellyfinAudioPlayerTests/Pods-JellyfinAudioPlayer-JellyfinAudioPlayerTests-frameworks.sh",
|
||||||
|
"${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL/OpenSSL.framework/OpenSSL",
|
||||||
|
);
|
||||||
|
name = "[CP] Embed Pods Frameworks";
|
||||||
|
outputPaths = (
|
||||||
|
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework",
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-JellyfinAudioPlayer-JellyfinAudioPlayerTests/Pods-JellyfinAudioPlayer-JellyfinAudioPlayerTests-frameworks.sh\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
B9FB8FC65CEFF9AFAC71127E /* [CP] Copy Pods Resources */ = {
|
B9FB8FC65CEFF9AFAC71127E /* [CP] Copy Pods Resources */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -383,6 +403,24 @@
|
|||||||
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";
|
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";
|
||||||
showEnvVarsInLog = 0;
|
showEnvVarsInLog = 0;
|
||||||
};
|
};
|
||||||
|
E8FF56077B675D4D92D5CC25 /* [CP] Embed Pods Frameworks */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
"${PODS_ROOT}/Target Support Files/Pods-JellyfinAudioPlayer/Pods-JellyfinAudioPlayer-frameworks.sh",
|
||||||
|
"${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL/OpenSSL.framework/OpenSSL",
|
||||||
|
);
|
||||||
|
name = "[CP] Embed Pods Frameworks";
|
||||||
|
outputPaths = (
|
||||||
|
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework",
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-JellyfinAudioPlayer/Pods-JellyfinAudioPlayer-frameworks.sh\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
FD10A7F022414F080027D42C /* Start Packager */ = {
|
FD10A7F022414F080027D42C /* Start Packager */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -504,7 +542,7 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 9;
|
CURRENT_PROJECT_VERSION = 13;
|
||||||
DEVELOPMENT_TEAM = 238P3C58WC;
|
DEVELOPMENT_TEAM = 238P3C58WC;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
@@ -535,7 +573,7 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 9;
|
CURRENT_PROJECT_VERSION = 13;
|
||||||
DEVELOPMENT_TEAM = 238P3C58WC;
|
DEVELOPMENT_TEAM = 238P3C58WC;
|
||||||
INFOPLIST_FILE = JellyfinAudioPlayer/Info.plist;
|
INFOPLIST_FILE = JellyfinAudioPlayer/Info.plist;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
|
|||||||
@@ -21,13 +21,11 @@
|
|||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>9</string>
|
<string>13</string>
|
||||||
<key>LSRequiresIPhoneOS</key>
|
<key>LSRequiresIPhoneOS</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>NSAppTransportSecurity</key>
|
<key>NSAppTransportSecurity</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>NSAllowsArbitraryLoads</key>
|
|
||||||
<true/>
|
|
||||||
<key>NSExceptionDomains</key>
|
<key>NSExceptionDomains</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>localhost</key>
|
<key>localhost</key>
|
||||||
|
|||||||
@@ -19,6 +19,6 @@
|
|||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>9</string>
|
<string>13</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|||||||
653
ios/Podfile.lock
653
ios/Podfile.lock
@@ -1,72 +1,63 @@
|
|||||||
PODS:
|
PODS:
|
||||||
- boost-for-react-native (1.63.0)
|
- boost-for-react-native (1.63.0)
|
||||||
- CocoaAsyncSocket (7.6.4)
|
- CocoaAsyncSocket (7.6.5)
|
||||||
- CocoaLibEvent (1.0.0)
|
|
||||||
- DoubleConversion (1.1.6)
|
- DoubleConversion (1.1.6)
|
||||||
- FBLazyVector (0.63.4)
|
- FBLazyVector (0.64.0)
|
||||||
- FBReactNativeSpec (0.63.4):
|
- FBReactNativeSpec (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTRequired (= 0.63.4)
|
- RCTRequired (= 0.64.0)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-Core (= 0.63.4)
|
- React-Core (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- Flipper (0.54.0):
|
- Flipper (0.75.1):
|
||||||
- Flipper-Folly (~> 2.2)
|
- Flipper-Folly (~> 2.5)
|
||||||
- Flipper-RSocket (~> 1.1)
|
- Flipper-RSocket (~> 1.3)
|
||||||
- Flipper-DoubleConversion (1.1.7)
|
- Flipper-DoubleConversion (1.1.7)
|
||||||
- Flipper-Folly (2.3.0):
|
- Flipper-Folly (2.5.1):
|
||||||
- boost-for-react-native
|
- boost-for-react-native
|
||||||
- CocoaLibEvent (~> 1.0)
|
|
||||||
- Flipper-DoubleConversion
|
- Flipper-DoubleConversion
|
||||||
- Flipper-Glog
|
- Flipper-Glog
|
||||||
- OpenSSL-Universal (= 1.0.2.20)
|
- libevent (~> 2.1.12)
|
||||||
|
- OpenSSL-Universal (= 1.1.180)
|
||||||
- Flipper-Glog (0.3.6)
|
- Flipper-Glog (0.3.6)
|
||||||
- Flipper-PeerTalk (0.0.4)
|
- Flipper-PeerTalk (0.0.4)
|
||||||
- Flipper-RSocket (1.1.0):
|
- Flipper-RSocket (1.3.0):
|
||||||
- Flipper-Folly (~> 2.2)
|
- Flipper-Folly (~> 2.5)
|
||||||
- FlipperKit (0.54.0):
|
- FlipperKit (0.75.1):
|
||||||
- FlipperKit/Core (= 0.54.0)
|
- FlipperKit/Core (= 0.75.1)
|
||||||
- FlipperKit/Core (0.54.0):
|
- FlipperKit/Core (0.75.1):
|
||||||
- Flipper (~> 0.54.0)
|
- Flipper (~> 0.75.1)
|
||||||
- FlipperKit/CppBridge
|
- FlipperKit/CppBridge
|
||||||
- FlipperKit/FBCxxFollyDynamicConvert
|
- FlipperKit/FBCxxFollyDynamicConvert
|
||||||
- FlipperKit/FBDefines
|
- FlipperKit/FBDefines
|
||||||
- FlipperKit/FKPortForwarding
|
- FlipperKit/FKPortForwarding
|
||||||
- FlipperKit/CppBridge (0.54.0):
|
- FlipperKit/CppBridge (0.75.1):
|
||||||
- Flipper (~> 0.54.0)
|
- Flipper (~> 0.75.1)
|
||||||
- FlipperKit/FBCxxFollyDynamicConvert (0.54.0):
|
- FlipperKit/FBCxxFollyDynamicConvert (0.75.1):
|
||||||
- Flipper-Folly (~> 2.2)
|
- Flipper-Folly (~> 2.5)
|
||||||
- FlipperKit/FBDefines (0.54.0)
|
- FlipperKit/FBDefines (0.75.1)
|
||||||
- FlipperKit/FKPortForwarding (0.54.0):
|
- FlipperKit/FKPortForwarding (0.75.1):
|
||||||
- CocoaAsyncSocket (~> 7.6)
|
- CocoaAsyncSocket (~> 7.6)
|
||||||
- Flipper-PeerTalk (~> 0.0.4)
|
- Flipper-PeerTalk (~> 0.0.4)
|
||||||
- FlipperKit/FlipperKitHighlightOverlay (0.54.0)
|
- FlipperKit/FlipperKitHighlightOverlay (0.75.1)
|
||||||
- FlipperKit/FlipperKitLayoutPlugin (0.54.0):
|
- FlipperKit/FlipperKitLayoutPlugin (0.75.1):
|
||||||
- FlipperKit/Core
|
- FlipperKit/Core
|
||||||
- FlipperKit/FlipperKitHighlightOverlay
|
- FlipperKit/FlipperKitHighlightOverlay
|
||||||
- FlipperKit/FlipperKitLayoutTextSearchable
|
- FlipperKit/FlipperKitLayoutTextSearchable
|
||||||
- YogaKit (~> 1.18)
|
- YogaKit (~> 1.18)
|
||||||
- FlipperKit/FlipperKitLayoutTextSearchable (0.54.0)
|
- FlipperKit/FlipperKitLayoutTextSearchable (0.75.1)
|
||||||
- FlipperKit/FlipperKitNetworkPlugin (0.54.0):
|
- FlipperKit/FlipperKitNetworkPlugin (0.75.1):
|
||||||
- FlipperKit/Core
|
- FlipperKit/Core
|
||||||
- FlipperKit/FlipperKitReactPlugin (0.54.0):
|
- FlipperKit/FlipperKitReactPlugin (0.75.1):
|
||||||
- FlipperKit/Core
|
- FlipperKit/Core
|
||||||
- FlipperKit/FlipperKitUserDefaultsPlugin (0.54.0):
|
- FlipperKit/FlipperKitUserDefaultsPlugin (0.75.1):
|
||||||
- FlipperKit/Core
|
- FlipperKit/Core
|
||||||
- FlipperKit/SKIOSNetworkPlugin (0.54.0):
|
- FlipperKit/SKIOSNetworkPlugin (0.75.1):
|
||||||
- FlipperKit/Core
|
- FlipperKit/Core
|
||||||
- FlipperKit/FlipperKitNetworkPlugin
|
- FlipperKit/FlipperKitNetworkPlugin
|
||||||
- Folly (2020.01.13.00):
|
|
||||||
- boost-for-react-native
|
|
||||||
- DoubleConversion
|
|
||||||
- Folly/Default (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- Folly/Default (2020.01.13.00):
|
|
||||||
- boost-for-react-native
|
|
||||||
- DoubleConversion
|
|
||||||
- glog
|
|
||||||
- glog (0.3.5)
|
- glog (0.3.5)
|
||||||
|
- libevent (2.1.12)
|
||||||
- libwebp (1.1.0):
|
- libwebp (1.1.0):
|
||||||
- libwebp/demux (= 1.1.0)
|
- libwebp/demux (= 1.1.0)
|
||||||
- libwebp/mux (= 1.1.0)
|
- libwebp/mux (= 1.1.0)
|
||||||
@@ -76,243 +67,274 @@ PODS:
|
|||||||
- libwebp/mux (1.1.0):
|
- libwebp/mux (1.1.0):
|
||||||
- libwebp/demux
|
- libwebp/demux
|
||||||
- libwebp/webp (1.1.0)
|
- libwebp/webp (1.1.0)
|
||||||
- OpenSSL-Universal (1.0.2.20):
|
- OpenSSL-Universal (1.1.180)
|
||||||
- OpenSSL-Universal/Static (= 1.0.2.20)
|
- RCT-Folly (2020.01.13.00):
|
||||||
- OpenSSL-Universal/Static (1.0.2.20)
|
- boost-for-react-native
|
||||||
- RCTRequired (0.63.4)
|
- DoubleConversion
|
||||||
- RCTTypeSafety (0.63.4):
|
|
||||||
- FBLazyVector (= 0.63.4)
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- RCTRequired (= 0.63.4)
|
|
||||||
- React-Core (= 0.63.4)
|
|
||||||
- React (0.63.4):
|
|
||||||
- React-Core (= 0.63.4)
|
|
||||||
- React-Core/DevSupport (= 0.63.4)
|
|
||||||
- React-Core/RCTWebSocket (= 0.63.4)
|
|
||||||
- React-RCTActionSheet (= 0.63.4)
|
|
||||||
- React-RCTAnimation (= 0.63.4)
|
|
||||||
- React-RCTBlob (= 0.63.4)
|
|
||||||
- React-RCTImage (= 0.63.4)
|
|
||||||
- React-RCTLinking (= 0.63.4)
|
|
||||||
- React-RCTNetwork (= 0.63.4)
|
|
||||||
- React-RCTSettings (= 0.63.4)
|
|
||||||
- React-RCTText (= 0.63.4)
|
|
||||||
- React-RCTVibration (= 0.63.4)
|
|
||||||
- React-callinvoker (0.63.4)
|
|
||||||
- React-Core (0.63.4):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-Core/Default (= 0.63.4)
|
- RCT-Folly/Default (= 2020.01.13.00)
|
||||||
- React-cxxreact (= 0.63.4)
|
- RCT-Folly/Default (2020.01.13.00):
|
||||||
- React-jsi (= 0.63.4)
|
- boost-for-react-native
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- DoubleConversion
|
||||||
|
- glog
|
||||||
|
- RCTRequired (0.64.0)
|
||||||
|
- RCTTypeSafety (0.64.0):
|
||||||
|
- FBLazyVector (= 0.64.0)
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
|
- RCTRequired (= 0.64.0)
|
||||||
|
- React-Core (= 0.64.0)
|
||||||
|
- React (0.64.0):
|
||||||
|
- React-Core (= 0.64.0)
|
||||||
|
- React-Core/DevSupport (= 0.64.0)
|
||||||
|
- React-Core/RCTWebSocket (= 0.64.0)
|
||||||
|
- React-RCTActionSheet (= 0.64.0)
|
||||||
|
- React-RCTAnimation (= 0.64.0)
|
||||||
|
- React-RCTBlob (= 0.64.0)
|
||||||
|
- React-RCTImage (= 0.64.0)
|
||||||
|
- React-RCTLinking (= 0.64.0)
|
||||||
|
- React-RCTNetwork (= 0.64.0)
|
||||||
|
- React-RCTSettings (= 0.64.0)
|
||||||
|
- React-RCTText (= 0.64.0)
|
||||||
|
- React-RCTVibration (= 0.64.0)
|
||||||
|
- React-callinvoker (0.64.0)
|
||||||
|
- React-Core (0.64.0):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
|
- React-Core/Default (= 0.64.0)
|
||||||
|
- React-cxxreact (= 0.64.0)
|
||||||
|
- React-jsi (= 0.64.0)
|
||||||
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/CoreModulesHeaders (0.63.4):
|
- React-Core/CoreModulesHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/Default (0.63.4):
|
- React-Core/Default (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-cxxreact (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsi (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/DevSupport (0.63.4):
|
- React-Core/DevSupport (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-Core/Default (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTWebSocket (= 0.63.4)
|
- React-Core/Default (= 0.64.0)
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-Core/RCTWebSocket (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsinspector (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-jsinspector (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTActionSheetHeaders (0.63.4):
|
- React-Core/RCTActionSheetHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTAnimationHeaders (0.63.4):
|
- React-Core/RCTAnimationHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTBlobHeaders (0.63.4):
|
- React-Core/RCTBlobHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTImageHeaders (0.63.4):
|
- React-Core/RCTImageHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTLinkingHeaders (0.63.4):
|
- React-Core/RCTLinkingHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTNetworkHeaders (0.63.4):
|
- React-Core/RCTNetworkHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTSettingsHeaders (0.63.4):
|
- React-Core/RCTSettingsHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTTextHeaders (0.63.4):
|
- React-Core/RCTTextHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTVibrationHeaders (0.63.4):
|
- React-Core/RCTVibrationHeaders (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTWebSocket (0.63.4):
|
- React-Core/RCTWebSocket (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-Core/Default (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-Core/Default (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsiexecutor (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
|
- React-jsiexecutor (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-CoreModules (0.63.4):
|
- React-CoreModules (0.64.0):
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-Core/CoreModulesHeaders (= 0.63.4)
|
- React-Core/CoreModulesHeaders (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-RCTImage (= 0.63.4)
|
- React-RCTImage (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- React-cxxreact (0.63.4):
|
- React-cxxreact (0.64.0):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-callinvoker (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsinspector (= 0.63.4)
|
- React-callinvoker (= 0.64.0)
|
||||||
- React-jsi (0.63.4):
|
- React-jsi (= 0.64.0)
|
||||||
|
- React-jsinspector (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
|
- React-runtimeexecutor (= 0.64.0)
|
||||||
|
- React-jsi (0.64.0):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-jsi/Default (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsi/Default (0.63.4):
|
- React-jsi/Default (= 0.64.0)
|
||||||
|
- React-jsi/Default (0.64.0):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-jsiexecutor (0.63.4):
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
|
- React-jsiexecutor (0.64.0):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-cxxreact (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsi (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
- React-jsinspector (0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- react-native-safe-area-context (3.1.9):
|
- React-perflogger (= 0.64.0)
|
||||||
|
- React-jsinspector (0.64.0)
|
||||||
|
- react-native-airplay-button (1.0.4):
|
||||||
|
- React-Core
|
||||||
|
- react-native-safe-area-context (3.2.0):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-slider (3.0.3):
|
- react-native-slider (3.0.3):
|
||||||
- React
|
- React
|
||||||
- react-native-track-player (1.2.3):
|
- react-native-track-player (1.2.6):
|
||||||
- React
|
- React
|
||||||
- react-native-webview (11.2.3):
|
- react-native-webview (11.3.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-RCTActionSheet (0.63.4):
|
- React-perflogger (0.64.0)
|
||||||
- React-Core/RCTActionSheetHeaders (= 0.63.4)
|
- React-RCTActionSheet (0.64.0):
|
||||||
- React-RCTAnimation (0.63.4):
|
- React-Core/RCTActionSheetHeaders (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTAnimation (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTAnimationHeaders (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTAnimationHeaders (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-RCTBlob (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTBlob (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- React-Core/RCTBlobHeaders (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTWebSocket (= 0.63.4)
|
- React-Core/RCTBlobHeaders (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTWebSocket (= 0.64.0)
|
||||||
- React-RCTNetwork (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-RCTNetwork (= 0.64.0)
|
||||||
- React-RCTImage (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTImage (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTImageHeaders (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTImageHeaders (= 0.64.0)
|
||||||
- React-RCTNetwork (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-RCTNetwork (= 0.64.0)
|
||||||
- React-RCTLinking (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTLinking (0.64.0):
|
||||||
- React-Core/RCTLinkingHeaders (= 0.63.4)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTLinkingHeaders (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-RCTNetwork (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTNetwork (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTNetworkHeaders (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTNetworkHeaders (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-RCTSettings (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTSettings (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- RCTTypeSafety (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTSettingsHeaders (= 0.63.4)
|
- RCTTypeSafety (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTSettingsHeaders (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- React-RCTText (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
- React-Core/RCTTextHeaders (= 0.63.4)
|
- React-RCTText (0.64.0):
|
||||||
- React-RCTVibration (0.63.4):
|
- React-Core/RCTTextHeaders (= 0.64.0)
|
||||||
- FBReactNativeSpec (= 0.63.4)
|
- React-RCTVibration (0.64.0):
|
||||||
- Folly (= 2020.01.13.00)
|
- FBReactNativeSpec (= 0.64.0)
|
||||||
- React-Core/RCTVibrationHeaders (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsi (= 0.63.4)
|
- React-Core/RCTVibrationHeaders (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.4)
|
- React-jsi (= 0.64.0)
|
||||||
- ReactCommon/turbomodule/core (0.63.4):
|
- ReactCommon/turbomodule/core (= 0.64.0)
|
||||||
|
- React-runtimeexecutor (0.64.0):
|
||||||
|
- React-jsi (= 0.64.0)
|
||||||
|
- ReactCommon/turbomodule/core (0.64.0):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-callinvoker (= 0.63.4)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core (= 0.63.4)
|
- React-callinvoker (= 0.64.0)
|
||||||
- React-cxxreact (= 0.63.4)
|
- React-Core (= 0.64.0)
|
||||||
- React-jsi (= 0.63.4)
|
- React-cxxreact (= 0.64.0)
|
||||||
|
- React-jsi (= 0.64.0)
|
||||||
|
- React-perflogger (= 0.64.0)
|
||||||
- RNCAsyncStorage (1.12.1):
|
- RNCAsyncStorage (1.12.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNCMaskedView (0.1.10):
|
- RNCMaskedView (0.1.10):
|
||||||
@@ -323,15 +345,42 @@ PODS:
|
|||||||
- React-Core
|
- React-Core
|
||||||
- SDWebImage (~> 5.8)
|
- SDWebImage (~> 5.8)
|
||||||
- SDWebImageWebPCoder (~> 0.6.1)
|
- SDWebImageWebPCoder (~> 0.6.1)
|
||||||
- RNGestureHandler (1.10.0):
|
- RNGestureHandler (1.10.3):
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNLocalize (2.0.1):
|
- RNLocalize (2.0.2):
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNReanimated (1.13.2):
|
- RNReanimated (2.0.0):
|
||||||
|
- DoubleConversion
|
||||||
|
- FBLazyVector
|
||||||
|
- FBReactNativeSpec
|
||||||
|
- glog
|
||||||
|
- RCT-Folly
|
||||||
|
- RCTRequired
|
||||||
|
- RCTTypeSafety
|
||||||
|
- React
|
||||||
|
- React-callinvoker
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNScreens (2.17.1):
|
- React-Core/DevSupport
|
||||||
|
- React-Core/RCTWebSocket
|
||||||
|
- React-CoreModules
|
||||||
|
- React-cxxreact
|
||||||
|
- React-jsi
|
||||||
|
- React-jsiexecutor
|
||||||
|
- React-jsinspector
|
||||||
|
- React-RCTActionSheet
|
||||||
|
- React-RCTAnimation
|
||||||
|
- React-RCTBlob
|
||||||
|
- React-RCTImage
|
||||||
|
- React-RCTLinking
|
||||||
|
- React-RCTNetwork
|
||||||
|
- React-RCTSettings
|
||||||
|
- React-RCTText
|
||||||
|
- React-RCTVibration
|
||||||
|
- ReactCommon/turbomodule/core
|
||||||
|
- Yoga
|
||||||
|
- RNScreens (2.18.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNSentry (2.2.0):
|
- RNSentry (2.3.0):
|
||||||
- React-Core
|
- React-Core
|
||||||
- Sentry (= 6.1.4)
|
- Sentry (= 6.1.4)
|
||||||
- RNSVG (12.1.0):
|
- RNSVG (12.1.0):
|
||||||
@@ -352,28 +401,28 @@ PODS:
|
|||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
|
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
|
||||||
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
|
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
|
||||||
- FBReactNativeSpec (from `../node_modules/react-native/Libraries/FBReactNativeSpec`)
|
- FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
|
||||||
- Flipper (~> 0.54.0)
|
- Flipper (~> 0.75.1)
|
||||||
- Flipper-DoubleConversion (= 1.1.7)
|
- Flipper-DoubleConversion (= 1.1.7)
|
||||||
- Flipper-Folly (~> 2.2)
|
- Flipper-Folly (~> 2.5)
|
||||||
- Flipper-Glog (= 0.3.6)
|
- Flipper-Glog (= 0.3.6)
|
||||||
- Flipper-PeerTalk (~> 0.0.4)
|
- Flipper-PeerTalk (~> 0.0.4)
|
||||||
- Flipper-RSocket (~> 1.1)
|
- Flipper-RSocket (~> 1.3)
|
||||||
- FlipperKit (~> 0.54.0)
|
- FlipperKit (~> 0.75.1)
|
||||||
- FlipperKit/Core (~> 0.54.0)
|
- FlipperKit/Core (~> 0.75.1)
|
||||||
- FlipperKit/CppBridge (~> 0.54.0)
|
- FlipperKit/CppBridge (~> 0.75.1)
|
||||||
- FlipperKit/FBCxxFollyDynamicConvert (~> 0.54.0)
|
- FlipperKit/FBCxxFollyDynamicConvert (~> 0.75.1)
|
||||||
- FlipperKit/FBDefines (~> 0.54.0)
|
- FlipperKit/FBDefines (~> 0.75.1)
|
||||||
- FlipperKit/FKPortForwarding (~> 0.54.0)
|
- FlipperKit/FKPortForwarding (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitHighlightOverlay (~> 0.54.0)
|
- FlipperKit/FlipperKitHighlightOverlay (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitLayoutPlugin (~> 0.54.0)
|
- FlipperKit/FlipperKitLayoutPlugin (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitLayoutTextSearchable (~> 0.54.0)
|
- FlipperKit/FlipperKitLayoutTextSearchable (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitNetworkPlugin (~> 0.54.0)
|
- FlipperKit/FlipperKitNetworkPlugin (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitReactPlugin (~> 0.54.0)
|
- FlipperKit/FlipperKitReactPlugin (~> 0.75.1)
|
||||||
- FlipperKit/FlipperKitUserDefaultsPlugin (~> 0.54.0)
|
- FlipperKit/FlipperKitUserDefaultsPlugin (~> 0.75.1)
|
||||||
- FlipperKit/SKIOSNetworkPlugin (~> 0.54.0)
|
- FlipperKit/SKIOSNetworkPlugin (~> 0.75.1)
|
||||||
- Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`)
|
|
||||||
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
|
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
|
||||||
|
- RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
|
||||||
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
|
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
|
||||||
- RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
|
- RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
|
||||||
- React (from `../node_modules/react-native/`)
|
- React (from `../node_modules/react-native/`)
|
||||||
@@ -386,10 +435,12 @@ DEPENDENCIES:
|
|||||||
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
|
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
|
||||||
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
|
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
|
||||||
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
|
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
|
||||||
|
- react-native-airplay-button (from `../node_modules/react-native-airplay-button`)
|
||||||
- react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`)
|
- react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`)
|
||||||
- "react-native-slider (from `../node_modules/@react-native-community/slider`)"
|
- "react-native-slider (from `../node_modules/@react-native-community/slider`)"
|
||||||
- react-native-track-player (from `../node_modules/react-native-track-player`)
|
- react-native-track-player (from `../node_modules/react-native-track-player`)
|
||||||
- react-native-webview (from `../node_modules/react-native-webview`)
|
- react-native-webview (from `../node_modules/react-native-webview`)
|
||||||
|
- React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
|
||||||
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
|
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
|
||||||
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
|
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
|
||||||
- React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
|
- React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
|
||||||
@@ -399,6 +450,7 @@ DEPENDENCIES:
|
|||||||
- React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
|
- React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
|
||||||
- React-RCTText (from `../node_modules/react-native/Libraries/Text`)
|
- React-RCTText (from `../node_modules/react-native/Libraries/Text`)
|
||||||
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
|
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
|
||||||
|
- React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
|
||||||
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
|
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
|
||||||
- "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)"
|
- "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)"
|
||||||
- "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)"
|
- "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)"
|
||||||
@@ -416,7 +468,6 @@ SPEC REPOS:
|
|||||||
trunk:
|
trunk:
|
||||||
- boost-for-react-native
|
- boost-for-react-native
|
||||||
- CocoaAsyncSocket
|
- CocoaAsyncSocket
|
||||||
- CocoaLibEvent
|
|
||||||
- Flipper
|
- Flipper
|
||||||
- Flipper-DoubleConversion
|
- Flipper-DoubleConversion
|
||||||
- Flipper-Folly
|
- Flipper-Folly
|
||||||
@@ -424,6 +475,7 @@ SPEC REPOS:
|
|||||||
- Flipper-PeerTalk
|
- Flipper-PeerTalk
|
||||||
- Flipper-RSocket
|
- Flipper-RSocket
|
||||||
- FlipperKit
|
- FlipperKit
|
||||||
|
- libevent
|
||||||
- libwebp
|
- libwebp
|
||||||
- OpenSSL-Universal
|
- OpenSSL-Universal
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
@@ -437,11 +489,11 @@ EXTERNAL SOURCES:
|
|||||||
FBLazyVector:
|
FBLazyVector:
|
||||||
:path: "../node_modules/react-native/Libraries/FBLazyVector"
|
:path: "../node_modules/react-native/Libraries/FBLazyVector"
|
||||||
FBReactNativeSpec:
|
FBReactNativeSpec:
|
||||||
:path: "../node_modules/react-native/Libraries/FBReactNativeSpec"
|
:path: "../node_modules/react-native/React/FBReactNativeSpec"
|
||||||
Folly:
|
|
||||||
:podspec: "../node_modules/react-native/third-party-podspecs/Folly.podspec"
|
|
||||||
glog:
|
glog:
|
||||||
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
|
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
|
||||||
|
RCT-Folly:
|
||||||
|
:podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
|
||||||
RCTRequired:
|
RCTRequired:
|
||||||
:path: "../node_modules/react-native/Libraries/RCTRequired"
|
:path: "../node_modules/react-native/Libraries/RCTRequired"
|
||||||
RCTTypeSafety:
|
RCTTypeSafety:
|
||||||
@@ -462,6 +514,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native/ReactCommon/jsiexecutor"
|
:path: "../node_modules/react-native/ReactCommon/jsiexecutor"
|
||||||
React-jsinspector:
|
React-jsinspector:
|
||||||
:path: "../node_modules/react-native/ReactCommon/jsinspector"
|
:path: "../node_modules/react-native/ReactCommon/jsinspector"
|
||||||
|
react-native-airplay-button:
|
||||||
|
:path: "../node_modules/react-native-airplay-button"
|
||||||
react-native-safe-area-context:
|
react-native-safe-area-context:
|
||||||
:path: "../node_modules/react-native-safe-area-context"
|
:path: "../node_modules/react-native-safe-area-context"
|
||||||
react-native-slider:
|
react-native-slider:
|
||||||
@@ -470,6 +524,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native-track-player"
|
:path: "../node_modules/react-native-track-player"
|
||||||
react-native-webview:
|
react-native-webview:
|
||||||
:path: "../node_modules/react-native-webview"
|
:path: "../node_modules/react-native-webview"
|
||||||
|
React-perflogger:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon/reactperflogger"
|
||||||
React-RCTActionSheet:
|
React-RCTActionSheet:
|
||||||
:path: "../node_modules/react-native/Libraries/ActionSheetIOS"
|
:path: "../node_modules/react-native/Libraries/ActionSheetIOS"
|
||||||
React-RCTAnimation:
|
React-RCTAnimation:
|
||||||
@@ -488,6 +544,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native/Libraries/Text"
|
:path: "../node_modules/react-native/Libraries/Text"
|
||||||
React-RCTVibration:
|
React-RCTVibration:
|
||||||
:path: "../node_modules/react-native/Libraries/Vibration"
|
:path: "../node_modules/react-native/Libraries/Vibration"
|
||||||
|
React-runtimeexecutor:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
|
||||||
ReactCommon:
|
ReactCommon:
|
||||||
:path: "../node_modules/react-native/ReactCommon"
|
:path: "../node_modules/react-native/ReactCommon"
|
||||||
RNCAsyncStorage:
|
RNCAsyncStorage:
|
||||||
@@ -515,60 +573,63 @@ EXTERNAL SOURCES:
|
|||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
|
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
|
||||||
CocoaAsyncSocket: 694058e7c0ed05a9e217d1b3c7ded962f4180845
|
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
|
||||||
CocoaLibEvent: 2fab71b8bd46dd33ddb959f7928ec5909f838e3f
|
DoubleConversion: cf9b38bf0b2d048436d9a82ad2abe1404f11e7de
|
||||||
DoubleConversion: cde416483dac037923206447da6e1454df403714
|
FBLazyVector: 49cbe4b43e445b06bf29199b6ad2057649e4c8f5
|
||||||
FBLazyVector: 3bb422f41b18121b71783a905c10e58606f7dc3e
|
FBReactNativeSpec: a9de79cf8f9e07689882cfd8d40269cf531a82e9
|
||||||
FBReactNativeSpec: f2c97f2529dd79c083355182cc158c9f98f4bd6e
|
Flipper: d3da1aa199aad94455ae725e9f3aa43f3ec17021
|
||||||
Flipper: be611d4b742d8c87fbae2ca5f44603a02539e365
|
|
||||||
Flipper-DoubleConversion: 38631e41ef4f9b12861c67d17cb5518d06badc41
|
Flipper-DoubleConversion: 38631e41ef4f9b12861c67d17cb5518d06badc41
|
||||||
Flipper-Folly: e4493b013c02d9347d5e0cb4d128680239f6c78a
|
Flipper-Folly: f7a3caafbd74bda4827954fd7a6e000e36355489
|
||||||
Flipper-Glog: 1dfd6abf1e922806c52ceb8701a3599a79a200a6
|
Flipper-Glog: 1dfd6abf1e922806c52ceb8701a3599a79a200a6
|
||||||
Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9
|
Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9
|
||||||
Flipper-RSocket: 64e7431a55835eb953b0bf984ef3b90ae9fdddd7
|
Flipper-RSocket: 602921fee03edacf18f5d6f3d3594ba477f456e5
|
||||||
FlipperKit: ab353d41aea8aae2ea6daaf813e67496642f3d7d
|
FlipperKit: 8a20b5c5fcf9436cac58551dc049867247f64b00
|
||||||
Folly: b73c3869541e86821df3c387eb0af5f65addfab4
|
glog: 73c2498ac6884b13ede40eda8228cb1eee9d9d62
|
||||||
glog: 40a13f7840415b9a77023fbcae0f1e6f43192af3
|
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
|
||||||
libwebp: 946cb3063cea9236285f7e9a8505d806d30e07f3
|
libwebp: 946cb3063cea9236285f7e9a8505d806d30e07f3
|
||||||
OpenSSL-Universal: ff34003318d5e1163e9529b08470708e389ffcdd
|
OpenSSL-Universal: 1aa4f6a6ee7256b83db99ec1ccdaa80d10f9af9b
|
||||||
RCTRequired: 082f10cd3f905d6c124597fd1c14f6f2655ff65e
|
RCT-Folly: ec7a233ccc97cc556cf7237f0db1ff65b986f27c
|
||||||
RCTTypeSafety: 8c9c544ecbf20337d069e4ae7fd9a377aadf504b
|
RCTRequired: 2f8cb5b7533219bf4218a045f92768129cf7050a
|
||||||
React: b0a957a2c44da4113b0c4c9853d8387f8e64e615
|
RCTTypeSafety: 512728b73549e72ad7330b92f3d42936f2a4de5b
|
||||||
React-callinvoker: c3f44dd3cb195b6aa46621fff95ded79d59043fe
|
React: 98eac01574128a790f0bbbafe2d1a8607291ac24
|
||||||
React-Core: d3b2a1ac9a2c13c3bcde712d9281fc1c8a5b315b
|
React-callinvoker: def3f7fae16192df68d9b69fd4bbb59092ee36bc
|
||||||
React-CoreModules: 0581ff36cb797da0943d424f69e7098e43e9be60
|
React-Core: 70a52aa5dbe9b83befae82038451a7df9fd54c5a
|
||||||
React-cxxreact: c1480d4fda5720086c90df537ee7d285d4c57ac3
|
React-CoreModules: 052edef46117862e2570eb3a0f06d81c61d2c4b8
|
||||||
React-jsi: a0418934cf48f25b485631deb27c64dc40fb4c31
|
React-cxxreact: c1dc71b30653cfb4770efdafcbdc0ad6d388baab
|
||||||
React-jsiexecutor: 93bd528844ad21dc07aab1c67cb10abae6df6949
|
React-jsi: 74341196d9547cbcbcfa4b3bbbf03af56431d5a1
|
||||||
React-jsinspector: 58aef7155bc9a9683f5b60b35eccea8722a4f53a
|
React-jsiexecutor: 06a9c77b56902ae7ffcdd7a4905f664adc5d237b
|
||||||
react-native-safe-area-context: b6e0e284002381d2ff29fa4fff42b4d8282e3c94
|
React-jsinspector: 0ae35a37b20d5e031eb020a69cc5afdbd6406301
|
||||||
react-native-slider: e99fc201cefe81270fc9d81714a7a0f5e566b168
|
react-native-airplay-button: 6899e488bff6b4d87b33c1def54c919dad2e3803
|
||||||
react-native-track-player: 6ff21d21eb70ecbd2a6bad29822ecf6c8609a3aa
|
react-native-safe-area-context: e471852c5ed67eea4b10c5d9d43c1cebae3b231d
|
||||||
react-native-webview: 6520e3e7b4933de76b95ef542c8d7115cf45b68e
|
react-native-slider: b733e17fdd31186707146debf1f04b5d94aa1a93
|
||||||
React-RCTActionSheet: 89a0ca9f4a06c1f93c26067af074ccdce0f40336
|
react-native-track-player: 92eaa90aeb24ce1a7149f983c75128075004e7a2
|
||||||
React-RCTAnimation: 1bde3ecc0c104c55df246eda516e0deb03c4e49b
|
react-native-webview: 30f048378c6cee522ed9bbbedbc34acb21e58188
|
||||||
React-RCTBlob: a97d378b527740cc667e03ebfa183a75231ab0f0
|
React-perflogger: 9c547d8f06b9bf00cb447f2b75e8d7f19b7e02af
|
||||||
React-RCTImage: c1b1f2d3f43a4a528c8946d6092384b5c880d2f0
|
React-RCTActionSheet: 3080b6e12e0e1a5b313c8c0050699b5c794a1b11
|
||||||
React-RCTLinking: 35ae4ab9dc0410d1fcbdce4d7623194a27214fb2
|
React-RCTAnimation: 3f96f21a497ae7dabf4d2f150ee43f906aaf516f
|
||||||
React-RCTNetwork: 29ec2696f8d8cfff7331fac83d3e893c95ef43ae
|
React-RCTBlob: 283b8e5025e7f954176bc48164f846909002f3ed
|
||||||
React-RCTSettings: 60f0691bba2074ef394f95d4c2265ec284e0a46a
|
React-RCTImage: 5088a484faac78f2d877e1b79125d3bb1ea94a16
|
||||||
React-RCTText: 5c51df3f08cb9dedc6e790161195d12bac06101c
|
React-RCTLinking: 5e8fbb3e9a8bc2e4e3eb15b1eb8bda5fcac27b8c
|
||||||
React-RCTVibration: ae4f914cfe8de7d4de95ae1ea6cc8f6315d73d9d
|
React-RCTNetwork: 38ec277217b1e841d5e6a1fa78da65b9212ccb28
|
||||||
ReactCommon: 73d79c7039f473b76db6ff7c6b159c478acbbb3b
|
React-RCTSettings: 242d6e692108c3de4f3bb74b7586a8799e9ab070
|
||||||
RNCAsyncStorage: b03032fdbdb725bea0bd9e5ec5a7272865ae7398
|
React-RCTText: 8746736ac8eb5a4a74719aa695b7a236a93a83d2
|
||||||
RNCMaskedView: 5a8ec07677aa885546a0d98da336457e2bea557f
|
React-RCTVibration: 0fd6b21751a33cb72fce1a4a33ab9678416d307a
|
||||||
|
React-runtimeexecutor: cad74a1eaa53ee6e7a3620231939d8fe2c6afcf0
|
||||||
|
ReactCommon: cfe2b7fd20e0dbd2d1185cd7d8f99633fbc5ff05
|
||||||
|
RNCAsyncStorage: cb9a623793918c6699586281f0b51cbc38f046f9
|
||||||
|
RNCMaskedView: f5c7d14d6847b7b44853f7acb6284c1da30a3459
|
||||||
RNCPicker: 914b557e20b3b8317b084aca9ff4b4edb95f61e4
|
RNCPicker: 914b557e20b3b8317b084aca9ff4b4edb95f61e4
|
||||||
RNFastImage: d4870d58f5936111c56218dbd7fcfc18e65b58ff
|
RNFastImage: d4870d58f5936111c56218dbd7fcfc18e65b58ff
|
||||||
RNGestureHandler: 03f587ba19a7e2d9fe48fb9aa6e33ace5fd07dd5
|
RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211
|
||||||
RNLocalize: 41026b7c14878f1a1b381bc79f668f1fbf841adb
|
RNLocalize: 47e22ef8c36df1d572e42a87c8ae22e3fcf551dd
|
||||||
RNReanimated: e03f7425cb7a38dcf1b644d680d1bfc91c3337ad
|
RNReanimated: 64f6c5789f82818c07ba3c71864b73619cb23c76
|
||||||
RNScreens: b6c9607e6fe47c1b6e2f1910d2acd46dd7ecea3a
|
RNScreens: f7ad633b2e0190b77b6a7aab7f914fad6f198d8d
|
||||||
RNSentry: 6aeba1adc242fd22a6826acae92f430697b47a9c
|
RNSentry: 4f6907f9a4a41058988ebaa17666e9a402b50ff2
|
||||||
RNSVG: ce9d996113475209013317e48b05c21ee988d42e
|
RNSVG: ce9d996113475209013317e48b05c21ee988d42e
|
||||||
SDWebImage: c666b97e1fa9c64b4909816a903322018f0a9c84
|
SDWebImage: c666b97e1fa9c64b4909816a903322018f0a9c84
|
||||||
SDWebImageWebPCoder: d0dac55073088d24b2ac1b191a71a8f8d0adac21
|
SDWebImageWebPCoder: d0dac55073088d24b2ac1b191a71a8f8d0adac21
|
||||||
Sentry: 9d055e2de30a77685e86b219acf02e59b82091fc
|
Sentry: 9d055e2de30a77685e86b219acf02e59b82091fc
|
||||||
Yoga: 4bd86afe9883422a7c4028c00e34790f560923d6
|
Yoga: 8c8436d4171c87504c648ae23b1d81242bdf3bbf
|
||||||
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
|
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
|
||||||
|
|
||||||
PODFILE CHECKSUM: d99c1202f98b3f7477b6a86c9226010b36143469
|
PODFILE CHECKSUM: d99c1202f98b3f7477b6a86c9226010b36143469
|
||||||
|
|||||||
20522
package-lock.json
generated
20522
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
64
package.json
64
package.json
@@ -16,58 +16,60 @@
|
|||||||
"@react-native-community/masked-view": "^0.1.10",
|
"@react-native-community/masked-view": "^0.1.10",
|
||||||
"@react-native-community/picker": "^1.8.1",
|
"@react-native-community/picker": "^1.8.1",
|
||||||
"@react-native-community/slider": "^3.0.3",
|
"@react-native-community/slider": "^3.0.3",
|
||||||
"@react-navigation/bottom-tabs": "^5.11.7",
|
"@react-navigation/bottom-tabs": "^5.11.8",
|
||||||
"@react-navigation/native": "^5.9.2",
|
"@react-navigation/native": "^5.9.3",
|
||||||
"@react-navigation/stack": "^5.14.2",
|
"@react-navigation/stack": "^5.14.3",
|
||||||
"@reduxjs/toolkit": "^1.5.0",
|
"@reduxjs/toolkit": "^1.5.1",
|
||||||
"@sentry/react-native": "^2.2.0",
|
"@sentry/react-native": "^2.4.0",
|
||||||
"@types/lodash": "^4.14.168",
|
"@types/lodash": "^4.14.168",
|
||||||
"@types/redux-logger": "^3.0.8",
|
"date-fns": "^2.19.0",
|
||||||
"@types/styled-components": "^5.1.7",
|
|
||||||
"date-fns": "^2.17.0",
|
|
||||||
"fuse.js": "^6.4.6",
|
"fuse.js": "^6.4.6",
|
||||||
"i18n-js": "^3.8.0",
|
"i18n-js": "^3.8.0",
|
||||||
"lodash": "^4.17.20",
|
"lodash": "^4.17.21",
|
||||||
"react": "16.13.1",
|
"react": "17.0.1",
|
||||||
"react-native": "^0.63.4",
|
"react-native": "0.64.0",
|
||||||
|
"react-native-airplay-button": "^1.0.4",
|
||||||
"react-native-collapsible": "^1.5.3",
|
"react-native-collapsible": "^1.5.3",
|
||||||
"react-native-dotenv": "^2.5.1",
|
"react-native-dotenv": "^2.5.1",
|
||||||
"react-native-fast-image": "^8.3.4",
|
"react-native-fast-image": "^8.3.4",
|
||||||
"react-native-gesture-handler": "^1.9.0",
|
"react-native-gesture-handler": "^1.10.3",
|
||||||
"react-native-localize": "^2.0.1",
|
"react-native-localize": "^2.0.2",
|
||||||
"react-native-reanimated": "^1.13.2",
|
"react-native-reanimated": "^2.1.0",
|
||||||
"react-native-safe-area-context": "^3.1.9",
|
"react-native-safe-area-context": "^3.2.0",
|
||||||
"react-native-screens": "^2.17.1",
|
"react-native-screens": "^2.18.1",
|
||||||
"react-native-svg": "^12.1.0",
|
"react-native-svg": "^12.1.0",
|
||||||
"react-native-svg-transformer": "^0.14.3",
|
"react-native-svg-transformer": "^0.14.3",
|
||||||
"react-native-track-player": "github:leinelissen/react-native-track-player",
|
"react-native-track-player": "^1.2.7",
|
||||||
"react-native-webview": "^11.2.1",
|
"react-native-webview": "^11.3.2",
|
||||||
"react-redux": "^7.2.2",
|
"react-redux": "^7.2.3",
|
||||||
"redux": "^4.0.5",
|
"redux": "^4.0.5",
|
||||||
"redux-logger": "^3.0.6",
|
"redux-logger": "^3.0.6",
|
||||||
"redux-persist": "^6.0.0",
|
"redux-persist": "^6.0.0",
|
||||||
"styled-components": "^5.2.1"
|
"styled-components": "^5.2.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.8.4",
|
"@babel/core": "^7.13.14",
|
||||||
"@babel/runtime": "^7.8.4",
|
"@babel/runtime": "^7.13.10",
|
||||||
"@react-native-community/eslint-config": "^2.0.0",
|
"@react-native-community/eslint-config": "^2.0.0",
|
||||||
|
"@sentry/cli": "^1.63.2",
|
||||||
"@types/i18n-js": "^3.8.0",
|
"@types/i18n-js": "^3.8.0",
|
||||||
"@types/jest": "^26.0.20",
|
"@types/jest": "^26.0.22",
|
||||||
"@types/react-native": "^0.63.48",
|
"@types/react-native": "^0.64.2",
|
||||||
"@types/react-redux": "^7.1.16",
|
"@types/react-redux": "^7.1.16",
|
||||||
"@types/react-test-renderer": "^17.0.0",
|
"@types/react-test-renderer": "^17.0.1",
|
||||||
|
"@types/redux-logger": "^3.0.8",
|
||||||
|
"@types/styled-components": "^5.1.9",
|
||||||
"@types/styled-components-react-native": "^5.1.1",
|
"@types/styled-components-react-native": "^5.1.1",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.14.2",
|
"@typescript-eslint/eslint-plugin": "^4.20.0",
|
||||||
"@typescript-eslint/parser": "^4.14.2",
|
"@typescript-eslint/parser": "^4.20.0",
|
||||||
"babel-jest": "^26.6.3",
|
"babel-jest": "^26.6.3",
|
||||||
"babel-plugin-module-resolver": "^4.1.0",
|
"babel-plugin-module-resolver": "^4.1.0",
|
||||||
"eslint": "^7.19.0",
|
"eslint": "^7.23.0",
|
||||||
"eslint-plugin-react-hooks": "^4.2.0",
|
"eslint-plugin-react-hooks": "^4.2.0",
|
||||||
"jest": "^26.6.3",
|
"jest": "^26.6.3",
|
||||||
"metro-react-native-babel-preset": "^0.59.0",
|
"metro-react-native-babel-preset": "^0.65.2",
|
||||||
"react-test-renderer": "^17.0.1",
|
"react-test-renderer": "^17.0.2",
|
||||||
"typescript": "^4.1.3"
|
"typescript": "^4.2.3"
|
||||||
},
|
},
|
||||||
"jest": {
|
"jest": {
|
||||||
"preset": "react-native",
|
"preset": "react-native",
|
||||||
|
|||||||
@@ -11,7 +11,8 @@ import {
|
|||||||
} from '@react-navigation/native';
|
} from '@react-navigation/native';
|
||||||
import { useColorScheme } from 'react-native';
|
import { useColorScheme } from 'react-native';
|
||||||
import { ColorSchemeContext, themes } from './Colors';
|
import { ColorSchemeContext, themes } from './Colors';
|
||||||
import ErrorReportingAlert from 'utility/ErrorReportingAlert';
|
// import ErrorReportingAlert from 'utility/ErrorReportingAlert';
|
||||||
|
import PlayerStateUpdater from './PlayerStateUpdater';
|
||||||
|
|
||||||
export default function App(): JSX.Element {
|
export default function App(): JSX.Element {
|
||||||
const colorScheme = useColorScheme();
|
const colorScheme = useColorScheme();
|
||||||
@@ -41,6 +42,7 @@ export default function App(): JSX.Element {
|
|||||||
<ColorSchemeContext.Provider value={theme}>
|
<ColorSchemeContext.Provider value={theme}>
|
||||||
<NavigationContainer theme={colorScheme === 'dark' ? DarkTheme : DefaultTheme}>
|
<NavigationContainer theme={colorScheme === 'dark' ? DarkTheme : DefaultTheme}>
|
||||||
<Routes />
|
<Routes />
|
||||||
|
<PlayerStateUpdater />
|
||||||
</NavigationContainer>
|
</NavigationContainer>
|
||||||
</ColorSchemeContext.Provider>
|
</ColorSchemeContext.Provider>
|
||||||
</PersistGate>
|
</PersistGate>
|
||||||
|
|||||||
@@ -13,21 +13,14 @@ interface ButtonProps extends PressableProps {
|
|||||||
style?: ViewProps['style'];
|
style?: ViewProps['style'];
|
||||||
}
|
}
|
||||||
|
|
||||||
interface PressableStyleProps {
|
|
||||||
active: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
const BaseButton = styled.Pressable<PressableStyleProps>`
|
const BaseButton = styled.Pressable`
|
||||||
padding: 16px;
|
padding: 16px;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
flex-grow: 1;
|
flex-grow: 1;
|
||||||
|
|
||||||
${props => props.active && css`
|
|
||||||
background-color: ${THEME_COLOR};
|
|
||||||
`}
|
|
||||||
`;
|
`;
|
||||||
|
|
||||||
const ButtonText = styled.Text<{ active?: boolean }>`
|
const ButtonText = styled.Text<{ active?: boolean }>`
|
||||||
@@ -51,8 +44,10 @@ export default function Button(props: ButtonProps) {
|
|||||||
{...rest}
|
{...rest}
|
||||||
onPressIn={handlePressIn}
|
onPressIn={handlePressIn}
|
||||||
onPressOut={handlePressOut}
|
onPressOut={handlePressOut}
|
||||||
active={isPressed}
|
style={[
|
||||||
style={[ defaultStyles.button, props.style ]}
|
props.style,
|
||||||
|
{ backgroundColor: isPressed ? THEME_COLOR : defaultStyles.button.backgroundColor }
|
||||||
|
]}
|
||||||
>
|
>
|
||||||
{Icon &&
|
{Icon &&
|
||||||
<Icon
|
<Icon
|
||||||
|
|||||||
54
src/components/PlayerStateUpdater.ts
Normal file
54
src/components/PlayerStateUpdater.ts
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
import { useCallback, useEffect } from 'react';
|
||||||
|
import TrackPlayer, { TrackPlayerEvents } from 'react-native-track-player';
|
||||||
|
import { shallowEqual, useDispatch } from 'react-redux';
|
||||||
|
import { useTypedSelector } from 'store';
|
||||||
|
import player from 'store/player';
|
||||||
|
|
||||||
|
function PlayerStateUpdater() {
|
||||||
|
const dispatch = useDispatch();
|
||||||
|
const trackId = useTypedSelector(state => state.player.currentTrack?.id, shallowEqual);
|
||||||
|
|
||||||
|
const handleUpdate = useCallback(async () => {
|
||||||
|
const currentTrackId = await TrackPlayer.getCurrentTrack();
|
||||||
|
|
||||||
|
// GUARD: Only retrieve new track if it is different from the one we
|
||||||
|
// have currently in state.
|
||||||
|
if (currentTrackId === trackId){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// GUARD: Only fetch current track if there is a current track
|
||||||
|
if (!currentTrackId) {
|
||||||
|
dispatch(player.actions.setCurrentTrack(undefined));
|
||||||
|
}
|
||||||
|
|
||||||
|
// If it is different, retrieve the track and save it
|
||||||
|
try {
|
||||||
|
const currentTrack = await TrackPlayer.getTrack(currentTrackId);
|
||||||
|
dispatch(player.actions.setCurrentTrack(currentTrack));
|
||||||
|
} catch {
|
||||||
|
// Due to the async nature, a track might be removed at the
|
||||||
|
// point when we try to retrieve it. If this happens, we'll just
|
||||||
|
// smother the error and wait for a new track update to
|
||||||
|
// finish.
|
||||||
|
}
|
||||||
|
}, [trackId, dispatch]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
function handler() {
|
||||||
|
handleUpdate();
|
||||||
|
}
|
||||||
|
|
||||||
|
handler();
|
||||||
|
|
||||||
|
const subscription = TrackPlayer.addEventListener(TrackPlayerEvents.PLAYBACK_TRACK_CHANGED, handler);
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
subscription.remove();
|
||||||
|
};
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default PlayerStateUpdater;
|
||||||
@@ -8,14 +8,20 @@ const localeGetters: Record<string, () => object> = {
|
|||||||
fr: () => require('./lang/fr/locale.json'),
|
fr: () => require('./lang/fr/locale.json'),
|
||||||
nl: () => require('./lang/nl/locale.json'),
|
nl: () => require('./lang/nl/locale.json'),
|
||||||
es: () => require('./lang/es/locale.json'),
|
es: () => require('./lang/es/locale.json'),
|
||||||
|
zh: () => require('./lang/zh/locale.json'),
|
||||||
};
|
};
|
||||||
|
|
||||||
// Have RNLocalize pick the best locale from the languages on offer
|
// Have RNLocalize pick the best locale from the languages on offer
|
||||||
const locale = findBestAvailableLanguage(Object.keys(localeGetters));
|
let locale = findBestAvailableLanguage(Object.keys(localeGetters));
|
||||||
|
|
||||||
// Check if the locale is correctly picked
|
// Check if the locale is correctly picked
|
||||||
if (!locale || !locale.languageTag) {
|
if (!locale || !locale.languageTag) {
|
||||||
throw new Error('Invalid locale selected');
|
// Some users might not list English as a fallback language, and hence might not
|
||||||
|
// be assigned a locale. In this case, we'll just default to English.
|
||||||
|
locale = {
|
||||||
|
languageTag: 'en',
|
||||||
|
isRTL: false,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the key-value pairs for the different languages you want to support.
|
// Set the key-value pairs for the different languages you want to support.
|
||||||
|
|||||||
42
src/localisation/lang/zh/locale.json
Normal file
42
src/localisation/lang/zh/locale.json
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"play-next": "播放下一首",
|
||||||
|
"play-album": "播放专辑",
|
||||||
|
"queue": "歌曲队列",
|
||||||
|
"add-to-queue": "加入队列",
|
||||||
|
"clear-queue": "清除队列",
|
||||||
|
"no-results": "无匹配记录",
|
||||||
|
"album": "专辑",
|
||||||
|
"albums": "专辑",
|
||||||
|
"all-albums": "所有专辑",
|
||||||
|
"search": "搜索",
|
||||||
|
"music": "歌曲",
|
||||||
|
"now-playing": "正在播放",
|
||||||
|
"onboarding-welcome": "欢迎",
|
||||||
|
"onboarding-intro": "Jellyfin Audio Player will allow you to stream your music library from anywhere, with full support for background audio and casting.",
|
||||||
|
"onboarding-cta": "In order to get started, you need a Jellyfin server. Click the button below to enter your Jellyfin server address and login to it.",
|
||||||
|
"set-jellyfin-server": "设置Jellyfin服务器",
|
||||||
|
"set-jellyfin-server-instruction": "设置Jellyfin服务器的完整网址,包括HTTP/HTTS和端口。",
|
||||||
|
"settings": "设置",
|
||||||
|
"jellyfin-library": "Jellyfin库",
|
||||||
|
"jellyfin-server-url": "Jellyfin服务器网址",
|
||||||
|
"jellyfin-access-token": "Jellyfin Access Token",
|
||||||
|
"jellyfin-user-id": "Jellyfin用户ID",
|
||||||
|
"setting-cache": "缓存",
|
||||||
|
"setting-cache-description": "If you have updated your Jellyfin library, but the app is holding on to cached assets, you can forcefully clear the cache using this button. This will force the app to fetch the library from scratch.",
|
||||||
|
"reset-cache": "清除缓存",
|
||||||
|
"recent-albums": "最近专辑",
|
||||||
|
"error-reporting": "Error Reporting",
|
||||||
|
"error-reporting-description": "During use of this app, you may encounter errors. Reporting these errors helps in creating a more secure and stable app experience.",
|
||||||
|
"error-reporting-rationale": "When you enable error reporting, every time an error occurs, a report is automatically created and sent to a server, along with helpful debugging information such as devices, versions and the specific error.",
|
||||||
|
"why-use-tracking": "Why use tracking?",
|
||||||
|
"why-use-tracking-description": "Tracking helps speed up development for this app by reporting weird edge cases and oversights. This helps make the app more stable and robust, thus increasing the app experience for everyone.",
|
||||||
|
"what-data-is-gathered": "What data is gathered?",
|
||||||
|
"what-data-is-gathered-description": "We log the error, device type, OS version, app version and device id. No application state is sent in any error reporting. The device id is a unique hash that can be reset in your device settings, and we cannot deduce any personal information from this identifier.",
|
||||||
|
"where-is-data-stored": "Where is data stored?",
|
||||||
|
"where-is-data-stored-description": "The Sentry backend is self-hosted on our own infrastructure. No-one but us has access to the servers, databases, application and data logs, least of all any Sentry staff. The infrastructure is hosted in the European Union.",
|
||||||
|
"enable-error-reporting": "Do you want to enable error reporting?",
|
||||||
|
"enable-error-reporting-description": "This helps improve the app experience by sending crash and error reports to us.",
|
||||||
|
"enable": "启用",
|
||||||
|
"disable": "禁用",
|
||||||
|
"more-info": "更多信息"
|
||||||
|
}
|
||||||
@@ -80,7 +80,7 @@ const Album: React.FC = () => {
|
|||||||
const refresh = useCallback(() => { dispatch(fetchTracksByAlbum(id)); }, [id, dispatch]);
|
const refresh = useCallback(() => { dispatch(fetchTracksByAlbum(id)); }, [id, dispatch]);
|
||||||
const selectTrack = useCallback(async (trackId) => {
|
const selectTrack = useCallback(async (trackId) => {
|
||||||
const tracks = await playAlbum(id, false);
|
const tracks = await playAlbum(id, false);
|
||||||
|
|
||||||
if (tracks) {
|
if (tracks) {
|
||||||
const track = tracks.find((t) => t.id.startsWith(trackId));
|
const track = tracks.find((t) => t.id.startsWith(trackId));
|
||||||
|
|
||||||
|
|||||||
14
src/screens/Player/components/Casting.android.tsx
Normal file
14
src/screens/Player/components/Casting.android.tsx
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
import React from 'react';
|
||||||
|
import styled from 'styled-components/native';
|
||||||
|
|
||||||
|
const Button = styled.View`
|
||||||
|
margin: 20px 40px;
|
||||||
|
`;
|
||||||
|
|
||||||
|
function Casting() {
|
||||||
|
return (
|
||||||
|
<Button />
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Casting;
|
||||||
9
src/screens/Player/components/Casting.d.ts
vendored
Normal file
9
src/screens/Player/components/Casting.d.ts
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
import React from 'react';
|
||||||
|
|
||||||
|
export interface CastingProps {
|
||||||
|
fill?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare const CastingComponent: React.FC<CastingProps>;
|
||||||
|
|
||||||
|
export default CastingComponent;
|
||||||
25
src/screens/Player/components/Casting.ios.tsx
Normal file
25
src/screens/Player/components/Casting.ios.tsx
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
import { THEME_COLOR } from 'CONSTANTS';
|
||||||
|
import React from 'react';
|
||||||
|
import AirPlayButton from 'react-native-airplay-button';
|
||||||
|
import styled from 'styled-components/native';
|
||||||
|
import { CastingProps } from './Casting';
|
||||||
|
|
||||||
|
const Button = styled.View`
|
||||||
|
margin: 20px 40px;
|
||||||
|
`;
|
||||||
|
|
||||||
|
function Casting({ fill }: CastingProps) {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Button>
|
||||||
|
<AirPlayButton
|
||||||
|
activeTintColor={THEME_COLOR}
|
||||||
|
tintColor={fill}
|
||||||
|
style={{ width: 40, height: 40 }}
|
||||||
|
/>
|
||||||
|
</Button>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Casting;
|
||||||
@@ -10,6 +10,7 @@ import PauseIcon from 'assets/pause.svg';
|
|||||||
import RepeatIcon from 'assets/repeat.svg';
|
import RepeatIcon from 'assets/repeat.svg';
|
||||||
// import ShuffleIcon from 'assets/shuffle.svg';
|
// import ShuffleIcon from 'assets/shuffle.svg';
|
||||||
import { THEME_COLOR } from 'CONSTANTS';
|
import { THEME_COLOR } from 'CONSTANTS';
|
||||||
|
import Casting from './Casting';
|
||||||
|
|
||||||
const BUTTON_SIZE = 40;
|
const BUTTON_SIZE = 40;
|
||||||
const BUTTON_SIZE_SMALL = 25;
|
const BUTTON_SIZE_SMALL = 25;
|
||||||
@@ -54,9 +55,7 @@ export default function MediaControls() {
|
|||||||
<Button>
|
<Button>
|
||||||
<RepeatButton fill={fill} />
|
<RepeatButton fill={fill} />
|
||||||
</Button>
|
</Button>
|
||||||
<Button>
|
<Casting fill={fill} />
|
||||||
{/* <ShuffleButton fill={fill} /> */}
|
|
||||||
</Button>
|
|
||||||
</Buttons>
|
</Buttons>
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,10 +1,26 @@
|
|||||||
import { createSlice } from '@reduxjs/toolkit';
|
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
|
||||||
|
import { Track } from 'react-native-track-player';
|
||||||
|
|
||||||
|
interface State {
|
||||||
|
addedTrackCount: number,
|
||||||
|
currentTrack: Track | undefined,
|
||||||
|
}
|
||||||
|
|
||||||
|
const initialState: State = {
|
||||||
|
addedTrackCount: 0,
|
||||||
|
currentTrack: undefined,
|
||||||
|
};
|
||||||
|
|
||||||
const player = createSlice({
|
const player = createSlice({
|
||||||
name: 'player',
|
name: 'player',
|
||||||
initialState: 0,
|
initialState,
|
||||||
reducers: {
|
reducers: {
|
||||||
addNewTrackToPlayer: (state) => state + 1,
|
addNewTrackToPlayer: (state) => {
|
||||||
|
state.addedTrackCount += 1;
|
||||||
|
},
|
||||||
|
setCurrentTrack: (state, action: PayloadAction<Track | undefined>) => {
|
||||||
|
state.currentTrack = action.payload;
|
||||||
|
},
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -22,11 +22,7 @@ const baseTrackOptions: Record<string, string> = {
|
|||||||
// This must be set to support client seeking
|
// This must be set to support client seeking
|
||||||
TranscodingProtocol: 'hls',
|
TranscodingProtocol: 'hls',
|
||||||
TranscodingContainer: 'ts',
|
TranscodingContainer: 'ts',
|
||||||
// NOTE: We cannot send a comma-delimited list yet due to an issue with
|
Container: 'mp3,aac,m4a,m4b|aac,alac,m4a,m4b|alac,flac|ogg',
|
||||||
// react-native-track-player. This is set to be merged and released very
|
|
||||||
// soon: https://github.com/react-native-kit/react-native-track-player/pull/950
|
|
||||||
// Container: 'mp3',
|
|
||||||
Container: 'mp3,aac,m4a,m4b|aac,alac,m4a,m4b|alac,flac',
|
|
||||||
AudioCodec: 'aac',
|
AudioCodec: 'aac',
|
||||||
static: 'true',
|
static: 'true',
|
||||||
};
|
};
|
||||||
@@ -53,7 +49,9 @@ export function generateTrack(track: AlbumTrack, credentials: Credentials): Trac
|
|||||||
title: track.Name,
|
title: track.Name,
|
||||||
artist: track.Artists.join(', '),
|
artist: track.Artists.join(', '),
|
||||||
album: track.Album,
|
album: track.Album,
|
||||||
artwork: getImage(track.Id, credentials),
|
artwork: track.AlbumId
|
||||||
|
? getImage(track.AlbumId, credentials)
|
||||||
|
: getImage(track.Id, credentials),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,42 +1,15 @@
|
|||||||
import { useEffect, useState } from 'react';
|
import { Track } from 'react-native-track-player';
|
||||||
import TrackPlayer, { usePlaybackState, Track } from 'react-native-track-player';
|
import { useTypedSelector } from 'store';
|
||||||
|
|
||||||
|
const idEqual = (left: Track | undefined, right: Track | undefined) => {
|
||||||
|
return left?.id === right?.id;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This hook retrieves the current playing track from TrackPlayer
|
* This hook retrieves the current playing track from TrackPlayer
|
||||||
*/
|
*/
|
||||||
export default function useCurrentTrack(): Track | undefined {
|
export default function useCurrentTrack(): Track | undefined {
|
||||||
const state = usePlaybackState();
|
const track = useTypedSelector(state => state.player.currentTrack, idEqual);
|
||||||
const [track, setTrack] = useState<Track>();
|
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
const fetchTrack = async () => {
|
|
||||||
const currentTrackId = await TrackPlayer.getCurrentTrack();
|
|
||||||
|
|
||||||
// GUARD: Only fetch current track if there is a current track
|
|
||||||
if (!currentTrackId) {
|
|
||||||
setTrack(undefined);
|
|
||||||
}
|
|
||||||
|
|
||||||
// GUARD: Only retrieve new track if it is different from the one we
|
|
||||||
// have currently in state.
|
|
||||||
if (currentTrackId === track?.id){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// If it is different, retrieve the track and save it
|
|
||||||
try {
|
|
||||||
const currentTrack = await TrackPlayer.getTrack(currentTrackId);
|
|
||||||
setTrack(currentTrack);
|
|
||||||
} catch {
|
|
||||||
// Due to the async nature, a track might be removed at the
|
|
||||||
// point when we try to retrieve it. If this happens, we'll just
|
|
||||||
// smother the error and wait for a new track update to
|
|
||||||
// finish.
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
fetchTrack();
|
|
||||||
}, [state, track, setTrack]);
|
|
||||||
|
|
||||||
return track;
|
return track;
|
||||||
}
|
}
|
||||||
@@ -8,7 +8,7 @@ import { useTypedSelector } from 'store';
|
|||||||
export default function useQueue(): Track[] {
|
export default function useQueue(): Track[] {
|
||||||
const state = usePlaybackState();
|
const state = usePlaybackState();
|
||||||
const [queue, setQueue] = useState<Track[]>([]);
|
const [queue, setQueue] = useState<Track[]>([]);
|
||||||
const addedTrackCount = useTypedSelector(state => state.player);
|
const addedTrackCount = useTypedSelector(state => state.player.addedTrackCount);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
TrackPlayer.getQueue().then(setQueue);
|
TrackPlayer.getQueue().then(setQueue);
|
||||||
|
|||||||
Reference in New Issue
Block a user