Skip to content

Commit

Permalink
Merge pull request #387 from MoTrPAC/386_JZ_File_Download_Refactor
Browse files Browse the repository at this point in the history
Connects to #386. File download refactor and new version of precawg data.
  • Loading branch information
jimmyzhen authored Feb 4, 2025
2 parents f78ca55 + 62bac76 commit 912f873
Show file tree
Hide file tree
Showing 15 changed files with 90 additions and 348 deletions.
4 changes: 2 additions & 2 deletions src/App/App.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import SearchPageConnected from '../Search/searchPage';
import GeneCentricViewConnected from '../AnalysisPage/GeneCentricViewRat/geneCentricViewPage';
import GraphicalClustering from '../AnalysisPage/GraphicalClustering/graphicalClusteringPage';
import CodeRepositories from '../CodeRepoPage/codeRepoPage';
import ProjectOverviewConnected from '../MainStudy/overview';
import ProjectOverview from '../MainStudy/overview';
import ExerciseBenefits from '../MainStudy/exerciseBenefits';
import StudyAssays from '../MainStudy/studyAssays';
import Tutorials from '../Tutorials/tutorials';
Expand Down Expand Up @@ -139,7 +139,7 @@ function App({ history = History }) {
/>
<Route
path="/project-overview"
component={withTracker(ProjectOverviewConnected)}
component={withTracker(ProjectOverview)}
/>
<Route
path="/exercise-benefits"
Expand Down
93 changes: 9 additions & 84 deletions src/BrowseDataPage/browseDataActions.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
import axios from 'axios';
import { trackEvent } from '../GoogleAnalytics/googleAnalytics';
import pass1b06 from '../data/file_download_metadata/rat_endurance_training_6mo_minified.json';
import pass1a06 from '../data/file_download_metadata/rat_acute_exercise_6mo_minified.json';
import humanPrecovidSedAdu from '../data/file_download_metadata/human_precovid_sed_adu_minified.json';

const CHANGE_FILTER = 'CHANGE_FILTER';
const SORT_CHANGE = 'SORT_CHANGE';
Expand All @@ -10,13 +13,9 @@ const RESET_FILTERS = 'RESET_FILTERS';
const URL_FETCH_START = 'URL_FETCH_START';
const URL_FETCH_SUCCESS = 'URL_FETCH_SUCCESS';
const URL_FETCH_FAILURE = 'URL_FETCH_FAILURE';
const LOAD_DATA_OBJECTS = 'LOAD_DATA_OBJECTS';
const DOWNLOAD_REQUEST_SUBMITTED = 'DOWNLOAD_REQUEST_SUBMITTED';
const DOWNLOAD_REQUEST_SUCCESS = 'DOWNLOAD_REQUEST_SUCCESS';
const DOWNLOAD_REQUEST_FAILURE = 'DOWNLOAD_REQUEST_FAILURE';
const DATA_FETCH_REQUESTED = 'DATA_FETCH_REQUESTED';
const DATA_FETCH_SUCCESS = 'DATA_FETCH_SUCCESS';
const DATA_FETCH_FAILURE = 'DATA_FETCH_FAILURE';
const RESET_BROWSE_STATE = 'RESET_BROWSE_STATE';
const SELECT_PASS1B_06_DATA = 'SELECT_PASS1B_06_DATA';
const SELECT_PASS1A_06_DATA = 'SELECT_PASS1A_06_DATA';
Expand All @@ -32,13 +31,9 @@ export const types = {
URL_FETCH_START,
URL_FETCH_SUCCESS,
URL_FETCH_FAILURE,
LOAD_DATA_OBJECTS,
DOWNLOAD_REQUEST_SUBMITTED,
DOWNLOAD_REQUEST_SUCCESS,
DOWNLOAD_REQUEST_FAILURE,
DATA_FETCH_REQUESTED,
DATA_FETCH_SUCCESS,
DATA_FETCH_FAILURE,
RESET_BROWSE_STATE,
SELECT_PASS1B_06_DATA,
SELECT_PASS1A_06_DATA,
Expand Down Expand Up @@ -107,13 +102,6 @@ function urlFetchFailure(error = '') {
};
}

function loadDataObjects(files) {
return {
type: LOAD_DATA_OBJECTS,
files,
};
}

function downloadRequested() {
return {
type: DOWNLOAD_REQUEST_SUBMITTED,
Expand All @@ -134,47 +122,30 @@ function downloadRequestFailure(error = '') {
};
}

function dataFetchRequested() {
return {
type: DATA_FETCH_REQUESTED,
};
}

function dataFetchSuccess(results) {
return {
type: DATA_FETCH_SUCCESS,
results,
};
}

function dataFetchFailure(error = '') {
return {
type: DATA_FETCH_FAILURE,
error,
};
}

function resetBrowseState() {
return {
type: RESET_BROWSE_STATE,
};
}

function selectPass1B06Data() {
function selectPass1B06Data(files = pass1b06) {
return {
type: SELECT_PASS1B_06_DATA,
files,
};
}

function selectPass1A06Data() {
function selectPass1A06Data(files = pass1a06) {
return {
type: SELECT_PASS1A_06_DATA,
files,
};
}

function selectHumanPreCovidSedAduData() {
function selectHumanPreCovidSedAduData(files = humanPrecovidSedAdu) {
return {
type: SELECT_HUMAN_PRECOVID_SED_ADU_DATA,
files,
};
}

Expand Down Expand Up @@ -222,21 +193,6 @@ const key =
process.env.NODE_ENV !== 'production'
? process.env.REACT_APP_API_SERVICE_KEY_DEV
: process.env.REACT_APP_API_SERVICE_KEY;
const searchHost =
process.env.NODE_ENV !== 'production'
? process.env.REACT_APP_ES_PROXY_HOST_DEV
: process.env.REACT_APP_ES_PROXY_HOST;
const fileSearchEndpoint = process.env.REACT_APP_FILE_SEARCH_ENDPOINT;
const accessToken =
process.env.NODE_ENV !== 'production'
? process.env.REACT_APP_ES_ACCESS_TOKEN_DEV
: process.env.REACT_APP_ES_ACCESS_TOKEN;

const headersConfig = {
headers: {
Authorization: `bearer ${accessToken}`,
},
};

function handleUrlFetch(selectedFiles) {
if (selectedFiles.length === 0) {
Expand Down Expand Up @@ -313,35 +269,6 @@ function handleDownloadRequest(email, name, userid, selectedFiles) {
};
}

// Fetch Data Objects when page loads
function handleDataFetch(phase) {
let requestBody = {
size: 8000,
};
if (phase && phase.length) {
requestBody = {
filters: {
phase,
},
size: 5000,
};
}
return (dispatch) => {
dispatch(dataFetchRequested());
return axios
.post(`${searchHost}${fileSearchEndpoint}`, requestBody, headersConfig)
.then((response) => {
if (response.data.error) {
dispatch(dataFetchFailure(response.data.error));
}
dispatch(dataFetchSuccess(response.data.result));
})
.catch((err) => {
dispatch(dataFetchFailure(`${err.name}: ${err.message}`));
});
};
}

const actions = {
changeFilter,
resetFilters,
Expand All @@ -350,9 +277,7 @@ const actions = {
sortChange,
changePageRequest,
handleUrlFetch,
loadDataObjects,
handleDownloadRequest,
handleDataFetch,
resetBrowseState,
selectPass1B06Data,
selectPass1A06Data,
Expand Down
7 changes: 0 additions & 7 deletions src/BrowseDataPage/browseDataPage.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import DataDownloadsMain from './components/dataDownloadsMain';
export function BrowseDataPage({
profile,
filteredFiles,
fetching,
activeFilters,
onChangeFilter,
onResetFilters,
Expand Down Expand Up @@ -42,7 +41,6 @@ export function BrowseDataPage({
<DataDownloadsMain
profile={profile}
filteredFiles={filteredFiles}
fetching={fetching}
activeFilters={activeFilters}
onChangeFilter={onChangeFilter}
onResetFilters={onResetFilters}
Expand All @@ -64,7 +62,6 @@ export function BrowseDataPage({

BrowseDataPage.propTypes = {
filteredFiles: PropTypes.arrayOf(PropTypes.shape({})).isRequired,
fetching: PropTypes.bool.isRequired,
profile: PropTypes.shape({
user_metadata: PropTypes.shape({
userType: PropTypes.string,
Expand Down Expand Up @@ -103,13 +100,9 @@ const mapStateToProps = (state) => ({
});

const mapDispatchToProps = (dispatch) => ({
onChangeSort: (column) => dispatch(actions.sortChange(column)),
onChangeFilter: (category, filter) =>
dispatch(actions.changeFilter(category, filter)),
onResetFilters: () => dispatch(actions.resetFilters()),
changePageRequest: (maxRows, page) =>
dispatch(actions.changePageRequest(maxRows, page)),
loadDataObjects: (files) => dispatch(actions.loadDataObjects(files)),
handleDownloadRequest: (email, name, userid, selectedFiles) =>
dispatch(actions.handleDownloadRequest(email, name, userid, selectedFiles)),
});
Expand Down
Loading

0 comments on commit 912f873

Please sign in to comment.