Build update #495
13 changed files with 970 additions and 944 deletions
1826
app/package-lock.json
generated
1826
app/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -8,7 +8,7 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"base-64": "^0.1.0",
|
"base-64": "^0.1.0",
|
||||||
"@expo/vector-icons": "^8.1.0",
|
"@expo/vector-icons": "^8.1.0",
|
||||||
"lbry-redux": "lbryio/lbry-redux#save-media-position",
|
"lbry-redux": "lbryio/lbry-redux",
|
||||||
"lbryinc": "lbryio/lbryinc",
|
"lbryinc": "lbryio/lbryinc",
|
||||||
"lodash": ">=4.17.11",
|
"lodash": ">=4.17.11",
|
||||||
"merge": ">=1.2.1",
|
"merge": ">=1.2.1",
|
||||||
|
@ -18,7 +18,7 @@
|
||||||
"react-native-country-picker-modal": "^0.6.2",
|
"react-native-country-picker-modal": "^0.6.2",
|
||||||
"react-native-exception-handler": "2.9.0",
|
"react-native-exception-handler": "2.9.0",
|
||||||
"react-native-fast-image": "^5.0.3",
|
"react-native-fast-image": "^5.0.3",
|
||||||
"react-native-fetch-blob": "^0.10.8",
|
"rn-fetch-blob": "^0.10.15",
|
||||||
"react-native-image-zoom-viewer": "^2.2.5",
|
"react-native-image-zoom-viewer": "^2.2.5",
|
||||||
"react-native-phone-input": "lbryio/react-native-phone-input",
|
"react-native-phone-input": "lbryio/react-native-phone-input",
|
||||||
"react-native-vector-icons": "^5.0.0",
|
"react-native-vector-icons": "^5.0.0",
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
"redux": "^3.6.0",
|
"redux": "^3.6.0",
|
||||||
"redux-logger": "3.0.6",
|
"redux-logger": "3.0.6",
|
||||||
"redux-persist": "^4.8.0",
|
"redux-persist": "^4.8.0",
|
||||||
"redux-persist-filesystem-storage": "^1.2.0",
|
"redux-persist-filesystem-storage": "^1.3.2",
|
||||||
"redux-persist-transform-compress": "^4.2.0",
|
"redux-persist-transform-compress": "^4.2.0",
|
||||||
"redux-persist-transform-filter": "0.0.10",
|
"redux-persist-transform-filter": "0.0.10",
|
||||||
"redux-thunk": "^2.2.0"
|
"redux-thunk": "^2.2.0"
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import {
|
import {
|
||||||
doFetchCostInfoForUri,
|
|
||||||
makeSelectFileInfoForUri,
|
makeSelectFileInfoForUri,
|
||||||
makeSelectDownloadingForUri,
|
makeSelectDownloadingForUri,
|
||||||
makeSelectLoadingForUri,
|
makeSelectLoadingForUri,
|
||||||
makeSelectCostInfoForUri
|
|
||||||
} from 'lbry-redux';
|
} from 'lbry-redux';
|
||||||
|
import { doFetchCostInfoForUri, makeSelectCostInfoForUri } from 'lbryinc';
|
||||||
import { doPurchaseUri, doStartDownload } from 'redux/actions/file';
|
import { doPurchaseUri, doStartDownload } from 'redux/actions/file';
|
||||||
import FileDownloadButton from './view';
|
import FileDownloadButton from './view';
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,6 @@
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import {
|
import { makeSelectClaimForUri } from 'lbry-redux';
|
||||||
doFetchCostInfoForUri,
|
import { doFetchCostInfoForUri, makeSelectCostInfoForUri, makeSelectFetchingCostInfoForUri } from 'lbryinc';
|
||||||
makeSelectCostInfoForUri,
|
|
||||||
makeSelectFetchingCostInfoForUri,
|
|
||||||
makeSelectClaimForUri
|
|
||||||
} from 'lbry-redux';
|
|
||||||
import FilePrice from './view';
|
import FilePrice from './view';
|
||||||
|
|
||||||
const select = (state, props) => ({
|
const select = (state, props) => ({
|
||||||
|
|
|
@ -11,16 +11,22 @@ import {
|
||||||
} from 'react-native';
|
} from 'react-native';
|
||||||
import {
|
import {
|
||||||
Lbry,
|
Lbry,
|
||||||
blacklistReducer,
|
|
||||||
claimsReducer,
|
claimsReducer,
|
||||||
contentReducer,
|
contentReducer,
|
||||||
costInfoReducer,
|
|
||||||
fileInfoReducer,
|
fileInfoReducer,
|
||||||
notificationsReducer,
|
notificationsReducer,
|
||||||
searchReducer,
|
searchReducer,
|
||||||
walletReducer
|
walletReducer
|
||||||
} from 'lbry-redux';
|
} from 'lbry-redux';
|
||||||
import { authReducer, rewardsReducer, subscriptionsReducer, userReducer } from 'lbryinc';
|
import {
|
||||||
|
authReducer,
|
||||||
|
blacklistReducer,
|
||||||
|
costInfoReducer,
|
||||||
|
homepageReducer,
|
||||||
|
rewardsReducer,
|
||||||
|
subscriptionsReducer,
|
||||||
|
userReducer
|
||||||
|
} from 'lbryinc';
|
||||||
import { createStore, applyMiddleware, compose, combineReducers } from 'redux';
|
import { createStore, applyMiddleware, compose, combineReducers } from 'redux';
|
||||||
import { createLogger } from 'redux-logger';
|
import { createLogger } from 'redux-logger';
|
||||||
import { AppNavigator } from 'component/AppNavigator';
|
import { AppNavigator } from 'component/AppNavigator';
|
||||||
|
@ -86,6 +92,7 @@ const reducers = combineReducers({
|
||||||
costInfo: costInfoReducer,
|
costInfo: costInfoReducer,
|
||||||
drawer: drawerReducer,
|
drawer: drawerReducer,
|
||||||
fileInfo: fileInfoReducer,
|
fileInfo: fileInfoReducer,
|
||||||
|
homepage: homepageReducer,
|
||||||
nav: navigatorReducer,
|
nav: navigatorReducer,
|
||||||
notifications: notificationsReducer,
|
notifications: notificationsReducer,
|
||||||
rewards: rewardsReducer,
|
rewards: rewardsReducer,
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import {
|
import {
|
||||||
doFetchFeaturedUris,
|
|
||||||
selectBalance,
|
selectBalance,
|
||||||
selectFeaturedUris,
|
|
||||||
selectFetchingFeaturedUris,
|
|
||||||
} from 'lbry-redux';
|
} from 'lbry-redux';
|
||||||
import {
|
import {
|
||||||
|
doFetchFeaturedUris,
|
||||||
doFetchRewardedContent,
|
doFetchRewardedContent,
|
||||||
doFetchMySubscriptions,
|
doFetchMySubscriptions,
|
||||||
doRemoveUnreadSubscriptions,
|
doRemoveUnreadSubscriptions,
|
||||||
selectEnabledChannelNotifications,
|
selectEnabledChannelNotifications,
|
||||||
|
selectFeaturedUris,
|
||||||
|
selectFetchingFeaturedUris,
|
||||||
selectSubscriptionClaims,
|
selectSubscriptionClaims,
|
||||||
selectUnreadSubscriptions,
|
selectUnreadSubscriptions,
|
||||||
} from 'lbryinc';
|
} from 'lbryinc';
|
||||||
|
|
|
@ -1,12 +1,10 @@
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import {
|
import {
|
||||||
doFetchFileInfo,
|
doFetchFileInfo,
|
||||||
doFetchCostInfoForUri,
|
|
||||||
doResolveUri,
|
doResolveUri,
|
||||||
doSendTip,
|
doSendTip,
|
||||||
doToast,
|
doToast,
|
||||||
makeSelectIsUriResolving,
|
makeSelectIsUriResolving,
|
||||||
makeSelectCostInfoForUri,
|
|
||||||
makeSelectFileInfoForUri,
|
makeSelectFileInfoForUri,
|
||||||
makeSelectChannelForClaimUri,
|
makeSelectChannelForClaimUri,
|
||||||
makeSelectClaimForUri,
|
makeSelectClaimForUri,
|
||||||
|
@ -14,9 +12,13 @@ import {
|
||||||
makeSelectContentTypeForUri,
|
makeSelectContentTypeForUri,
|
||||||
makeSelectMetadataForUri,
|
makeSelectMetadataForUri,
|
||||||
selectBalance,
|
selectBalance,
|
||||||
selectBlackListedOutpoints,
|
|
||||||
} from 'lbry-redux';
|
} from 'lbry-redux';
|
||||||
import { selectRewardContentClaimIds } from 'lbryinc';
|
import {
|
||||||
|
doFetchCostInfoForUri,
|
||||||
|
makeSelectCostInfoForUri,
|
||||||
|
selectRewardContentClaimIds,
|
||||||
|
selectBlackListedOutpoints
|
||||||
|
} from 'lbryinc';
|
||||||
import { doDeleteFile, doPurchaseUri, doStopDownloadingFile } from 'redux/actions/file';
|
import { doDeleteFile, doPurchaseUri, doStopDownloadingFile } from 'redux/actions/file';
|
||||||
import FilePage from './view';
|
import FilePage from './view';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { doBalanceSubscribe, doBlackListedOutpointsSubscribe, doUpdateBlockHeight, doToast } from 'lbry-redux';
|
import { doBalanceSubscribe, doUpdateBlockHeight, doToast } from 'lbry-redux';
|
||||||
import {
|
import {
|
||||||
doAuthenticate,
|
doAuthenticate,
|
||||||
|
doBlackListedOutpointsSubscribe,
|
||||||
doCheckSubscriptionsInit,
|
doCheckSubscriptionsInit,
|
||||||
doFetchMySubscriptions,
|
doFetchMySubscriptions,
|
||||||
doFetchRewardedContent,
|
doFetchRewardedContent,
|
||||||
|
|
|
@ -4,24 +4,22 @@ import {
|
||||||
doToast,
|
doToast,
|
||||||
formatCredits,
|
formatCredits,
|
||||||
selectBalance,
|
selectBalance,
|
||||||
makeSelectCostInfoForUri,
|
|
||||||
makeSelectFileInfoForUri,
|
makeSelectFileInfoForUri,
|
||||||
makeSelectMetadataForUri,
|
makeSelectMetadataForUri,
|
||||||
selectDownloadingByOutpoint,
|
selectDownloadingByOutpoint,
|
||||||
} from 'lbry-redux';
|
} from 'lbry-redux';
|
||||||
import { doClaimEligiblePurchaseRewards } from 'lbryinc';
|
import { doClaimEligiblePurchaseRewards, makeSelectCostInfoForUri } from 'lbryinc';
|
||||||
import { Alert, NativeModules } from 'react-native';
|
import { Alert, NativeModules } from 'react-native';
|
||||||
import Constants from '../../constants';
|
import Constants from 'constants';
|
||||||
|
|
||||||
const DOWNLOAD_POLL_INTERVAL = 250;
|
const DOWNLOAD_POLL_INTERVAL = 250;
|
||||||
|
|
||||||
const deleteBlobsForSdHash = (sdHash) => {
|
const deleteBlobsForSdHash = (sdHash) => {
|
||||||
/*Lbry.blob_list({ sd_hash: sdHash }).then(hashes => {
|
Lbry.blob_list({ sd_hash: sdHash }).then(hashes => {
|
||||||
hashes.filter(hash => hash != sdHash).forEach(hash => {
|
hashes.filter(hash => hash != sdHash).forEach(hash => {
|
||||||
Lbry.blob_delete({ blob_hash: hash });
|
Lbry.blob_delete({ blob_hash: hash });
|
||||||
});
|
});
|
||||||
});*/
|
});
|
||||||
return;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export function doUpdateLoadStatus(uri, outpoint) {
|
export function doUpdateLoadStatus(uri, outpoint) {
|
||||||
|
@ -349,7 +347,7 @@ export function doDeleteCompleteBlobs() {
|
||||||
data: {},
|
data: {},
|
||||||
});
|
});
|
||||||
|
|
||||||
/*Lbry.file_list().then(files => {
|
Lbry.file_list().then(files => {
|
||||||
files.forEach(fileInfo => {
|
files.forEach(fileInfo => {
|
||||||
if (fileInfo.completed) {
|
if (fileInfo.completed) {
|
||||||
Lbry.file_set_status({ status: 'stop', sd_hash: fileInfo.sd_hash }).then(() => {
|
Lbry.file_set_status({ status: 'stop', sd_hash: fileInfo.sd_hash }).then(() => {
|
||||||
|
@ -359,6 +357,6 @@ export function doDeleteCompleteBlobs() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});*/
|
});
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
com.gamemaker.game
|
com.gamemaker.game
|
||||||
-->
|
-->
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
package="{{ args.package }}"
|
package="{{ args.package }}"
|
||||||
android:versionCode="{{ args.numeric_version }}"
|
android:versionCode="{{ args.numeric_version }}"
|
||||||
android:versionName="{{ args.version }}"
|
android:versionName="{{ args.version }}"
|
||||||
|
@ -142,7 +143,7 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<provider
|
<provider
|
||||||
android:name="android.support.v4.content.FileProvider"
|
android:name="io.lbry.browser.LocalFileProvider"
|
||||||
android:authorities="io.lbry.browser.fileprovider"
|
android:authorities="io.lbry.browser.fileprovider"
|
||||||
android:grantUriPermissions="true"
|
android:grantUriPermissions="true"
|
||||||
android:exported="false">
|
android:exported="false">
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
buildscript {
|
buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
|
google()
|
||||||
jcenter()
|
jcenter()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:2.3.1'
|
classpath 'com.android.tools.build:gradle:3.0.0'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,6 +41,12 @@ android {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
applicationVariants.all { variant ->
|
||||||
|
variant.outputs.all {
|
||||||
|
outputFileName = "../" + outputFileName
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dexOptions {
|
dexOptions {
|
||||||
jumboMode true
|
jumboMode true
|
||||||
}
|
}
|
||||||
|
@ -93,7 +100,7 @@ subprojects {
|
||||||
dependencies {
|
dependencies {
|
||||||
compile project(':react-native-exception-handler')
|
compile project(':react-native-exception-handler')
|
||||||
compile project(':react-native-fast-image')
|
compile project(':react-native-fast-image')
|
||||||
compile project(':react-native-fetch-blob')
|
compile project(':rn-fetch-blob')
|
||||||
compile project(':react-native-video')
|
compile project(':react-native-video')
|
||||||
{%- for aar in aars %}
|
{%- for aar in aars %}
|
||||||
compile(name: '{{ aar }}', ext: 'aar')
|
compile(name: '{{ aar }}', ext: 'aar')
|
||||||
|
|
|
@ -3,7 +3,7 @@ include ':react-native-exception-handler'
|
||||||
project(':react-native-exception-handler').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-exception-handler/android')
|
project(':react-native-exception-handler').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-exception-handler/android')
|
||||||
include ':react-native-fast-image'
|
include ':react-native-fast-image'
|
||||||
project(':react-native-fast-image').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-fast-image/android')
|
project(':react-native-fast-image').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-fast-image/android')
|
||||||
include ':react-native-fetch-blob'
|
include ':rn-fetch-blob'
|
||||||
project(':react-native-fetch-blob').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-fetch-blob/android')
|
project(':rn-fetch-blob').projectDir = new File(rootProject.projectDir, './react/node_modules/rn-fetch-blob/android')
|
||||||
include ':react-native-video'
|
include ':react-native-video'
|
||||||
project(':react-native-video').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-video/android-exoplayer')
|
project(':react-native-video').projectDir = new File(rootProject.projectDir, './react/node_modules/react-native-video/android-exoplayer')
|
||||||
|
|
7
src/main/java/io/lbry/browser/LocalFileProvider.java
Normal file
7
src/main/java/io/lbry/browser/LocalFileProvider.java
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
package io.lbry.browser;
|
||||||
|
|
||||||
|
import android.support.v4.content.FileProvider;
|
||||||
|
|
||||||
|
public class LocalFileProvider extends FileProvider {
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in a new issue