Skip to content

Commit

Permalink
feat: Add an activity indicator
Browse files Browse the repository at this point in the history
  • Loading branch information
rashley-iqt committed Apr 23, 2019
1 parent 007cd81 commit 43a584e
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 11 deletions.
14 changes: 9 additions & 5 deletions src/App.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ import {
selectDatasets, getLastUpdated, removeDataset,getKeyFields, getIgnoredFields
} from 'domain/dataset';
import {
setHierarchyConfig, showNodes, colorBy, selectControls, setStartDataset, setEndDataset
setHierarchyConfig, showNodes, colorBy, selectControls, setStartDataset, setEndDataset,
showBusy
} from 'domain/controls';
import { getError, clearError } from "domain/error";
import { removeSearchIndex } from "epics/index-dataset-epic";
Expand Down Expand Up @@ -161,13 +162,14 @@ class App extends Component {
processOptions = () => {
if(this.state.options.action === IMPORT)
{
this.props.showBusy(true);
if(this.state.selectedFile){
this.props.uploadDataset({
'owner': uuidv4(),
'file': this.state.selectedFile,
'includeData': this.state.options.data,
'includeControls': this.state.options.controls,
});
})
}
this.setState({showOptions: false })
}
Expand Down Expand Up @@ -464,7 +466,7 @@ class App extends Component {
sizeUnit={"px"}
size={150}
color={'#0277BD'}
loading={this.state.busy}
loading={this.props.shouldShowBusy}
/>
</div>
</div>
Expand All @@ -490,7 +492,8 @@ const mapStateToProps = state => {
fullDatasets: datasets,
controls: controls,
keyFields: getKeyFields(state),
ignoredFields: getIgnoredFields(state)
ignoredFields: getIgnoredFields(state),
shouldShowBusy: controls.showBusy,
}
}

Expand All @@ -503,7 +506,8 @@ const mapDispatchToProps = {
removeSearchIndex,
setStartDataset,
setEndDataset,
uploadDataset
uploadDataset,
showBusy,
};

export default connect(mapStateToProps, mapDispatchToProps)(App);
2 changes: 0 additions & 2 deletions src/domain/controls.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@ const reducer = handleActions(
const colorBy = payload.colorBy || state.colorBy;
const start = payload.start || state.start;
const end = payload.end || state.end;
console.log("payload show busy: %o", payload.showBusy);
console.log(('showBusy' in payload));
const showBusy = ('showBusy' in payload) ? !!payload.showBusy : state.showBusy;
return {
...state,
Expand Down
3 changes: 2 additions & 1 deletion src/epics/load-dataset-epic.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { buildIndices } from './index-dataset-epic';

import { setError } from "domain/error"
import { setDatasets, setKeyFields, setIgnoredFields, configureDataset } from "domain/dataset";
import { setControls } from "domain/controls";
import { setControls, showBusy } from "domain/controls";

const loadDataset = createAction("LOAD_DATASET");

Expand All @@ -25,6 +25,7 @@ const loadDatasetEpic = (action$, store) => {
,setIgnoredFields(payload.ignoredFields)
,setControls(payload.controls)
,buildIndices(payload)
,showBusy(false)
)
})
,catchError((error) => {
Expand Down
11 changes: 8 additions & 3 deletions src/features/dataset-controls/DatasetControls.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ import { startRefresh, stopRefresh } from "epics/refresh-dataset-epic";
import { uploadDataset } from "epics/upload-dataset-epic";
import { removeSearchIndex } from "epics/index-dataset-epic";
import {
showNodes, setHierarchyConfig, colorBy, selectControls, setStartDataset, setEndDataset
showNodes, setHierarchyConfig, colorBy, selectControls, setStartDataset,
setEndDataset, showBusy
} from "domain/controls"

import { setError } from "domain/error"
Expand Down Expand Up @@ -96,6 +97,7 @@ class DatasetControls extends React.Component {
}

fetchAndSetDataset = (url, dataset, username, password, token) => {
this.props.showBusy(true);
this.props.setIsFetching({owner: this.props.uuid, isFetching: true});
const authHeader = buildAuthHeader(username, password, token);
if (toURL(url)) {
Expand Down Expand Up @@ -197,6 +199,7 @@ class DatasetControls extends React.Component {

onUploadOk = () =>{
if(this.state.selectedFile){
this.props.showBusy(true);
this.props.uploadDataset({
'owner': this.props.uuid,
'name':this.props.name,
Expand Down Expand Up @@ -508,7 +511,8 @@ DatasetControls.propTypes = {
fullDatasets: PropTypes.object,
controls: PropTypes.object,
keyFields: PropTypes.array,
ignoredFields: PropTypes.array
ignoredFields: PropTypes.array,
showBusy: PropTypes.func.isRequired,
};

const mapStateToProps = (state, ownProps) => {
Expand Down Expand Up @@ -542,7 +546,8 @@ const mapDispatchToProps = {
colorBy,
startRefresh,
stopRefresh,
setError
setError,
showBusy
};

export default connect(mapStateToProps, mapDispatchToProps)(DatasetControls);

0 comments on commit 43a584e

Please sign in to comment.