6e13fcfbd3
users see welcome screen once and choose preference SETTINGS moved to redux took steps toward eliminating unwanted analytics in app based on preferences settings page update to privacy controls and copy persist welcome version default tv on cleanup clean up appstrings populate prefs app only wallet custody, app only router settings on startup welcome sync, 3p share sync, emojis bump redux cleanup fix app not building fix sync bug, remove tvWelcomeVersion cleanup disable internalshare setting while signed in
150 lines
3.1 KiB
JavaScript
150 lines
3.1 KiB
JavaScript
import { createSelector } from 'reselect';
|
|
|
|
export const selectState = state => state.app || {};
|
|
|
|
export const selectPlatform = createSelector(
|
|
selectState,
|
|
state => state.platform
|
|
);
|
|
|
|
export const selectUpdateUrl = createSelector(
|
|
selectPlatform,
|
|
platform => {
|
|
switch (platform) {
|
|
case 'darwin':
|
|
return 'https://lbry.com/get/lbry.dmg';
|
|
case 'linux':
|
|
return 'https://lbry.com/get/lbry.deb';
|
|
case 'win32':
|
|
return 'https://lbry.com/get/lbry.exe';
|
|
default:
|
|
throw Error('Unknown platform');
|
|
}
|
|
}
|
|
);
|
|
|
|
export const selectHasClickedComment = createSelector(
|
|
selectState,
|
|
state => state.hasClickedComment
|
|
);
|
|
|
|
export const selectRemoteVersion = createSelector(
|
|
selectState,
|
|
state => state.remoteVersion
|
|
);
|
|
|
|
export const selectIsUpgradeAvailable = createSelector(
|
|
selectState,
|
|
state => state.isUpgradeAvailable
|
|
);
|
|
|
|
export const selectUpgradeFilename = createSelector(
|
|
selectPlatform,
|
|
selectRemoteVersion,
|
|
(platform, version) => {
|
|
switch (platform) {
|
|
case 'darwin':
|
|
return `LBRY_${version}.dmg`;
|
|
case 'linux':
|
|
return `LBRY_${version}.deb`;
|
|
case 'win32':
|
|
return `LBRY_${version}.exe`;
|
|
default:
|
|
throw Error('Unknown platform');
|
|
}
|
|
}
|
|
);
|
|
|
|
export const selectDownloadProgress = createSelector(
|
|
selectState,
|
|
state => state.downloadProgress
|
|
);
|
|
|
|
export const selectDownloadComplete = createSelector(
|
|
selectState,
|
|
state => state.upgradeDownloadCompleted
|
|
);
|
|
|
|
export const selectIsUpgradeSkipped = createSelector(
|
|
selectState,
|
|
state => state.isUpgradeSkipped
|
|
);
|
|
|
|
export const selectUpgradeDownloadPath = createSelector(
|
|
selectState,
|
|
state => state.downloadPath
|
|
);
|
|
|
|
export const selectUpgradeDownloadItem = createSelector(
|
|
selectState,
|
|
state => state.downloadItem
|
|
);
|
|
|
|
export const selectAutoUpdateDownloaded = createSelector(
|
|
selectState,
|
|
state => state.autoUpdateDownloaded
|
|
);
|
|
|
|
export const selectAutoUpdateDeclined = createSelector(
|
|
selectState,
|
|
state => state.autoUpdateDeclined
|
|
);
|
|
|
|
export const selectDaemonVersionMatched = createSelector(
|
|
selectState,
|
|
state => state.daemonVersionMatched
|
|
);
|
|
|
|
export const selectVolume = createSelector(
|
|
selectState,
|
|
state => state.volume
|
|
);
|
|
|
|
export const selectMute = createSelector(
|
|
selectState,
|
|
state => state.muted
|
|
);
|
|
|
|
export const selectUpgradeTimer = createSelector(
|
|
selectState,
|
|
state => state.checkUpgradeTimer
|
|
);
|
|
|
|
export const selectModal = createSelector(
|
|
selectState,
|
|
state => {
|
|
if (!state.modal) {
|
|
return null;
|
|
}
|
|
|
|
return {
|
|
id: state.modal,
|
|
modalProps: state.modalProps,
|
|
};
|
|
}
|
|
);
|
|
|
|
export const selectSearchOptionsExpanded = createSelector(
|
|
selectState,
|
|
state => state.searchOptionsExpanded
|
|
);
|
|
|
|
export const selectWelcomeVersion = createSelector(
|
|
selectState,
|
|
state => state.welcomeVersion
|
|
);
|
|
|
|
export const selectAllowAnalytics = createSelector(
|
|
selectState,
|
|
state => state.allowAnalytics
|
|
);
|
|
|
|
export const selectScrollStartingPosition = createSelector(
|
|
selectState,
|
|
state => state.currentScroll
|
|
);
|
|
|
|
export const selectIsPasswordSaved = createSelector(
|
|
selectState,
|
|
state => state.isPasswordSaved
|
|
);
|