Add progress bar to top of page for nicer loading indicator styles

This commit is contained in:
Dane Everitt 2020-04-10 12:41:08 -07:00
parent 708c15eba8
commit d3a06e1ca8
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
12 changed files with 133 additions and 34 deletions

View file

@ -3,12 +3,14 @@ import flashes, { FlashStore } from '@/state/flashes';
import user, { UserStore } from '@/state/user';
import permissions, { GloablPermissionsStore } from '@/state/permissions';
import settings, { SettingsStore } from '@/state/settings';
import progress, { ProgressStore } from '@/state/progress';
export interface ApplicationStore {
permissions: GloablPermissionsStore;
flashes: FlashStore;
user: UserStore;
settings: SettingsStore;
progress: ProgressStore;
}
const state: ApplicationStore = {
@ -16,6 +18,7 @@ const state: ApplicationStore = {
flashes,
user,
settings,
progress,
};
export const store = createStore(state);

View file

@ -0,0 +1,30 @@
import { action, Action } from 'easy-peasy';
export interface ProgressStore {
continuous: boolean;
progress?: number;
startContinuous: Action<ProgressStore>;
setProgress: Action<ProgressStore, number | undefined>;
setComplete: Action<ProgressStore>;
}
const progress: ProgressStore = {
continuous: false,
progress: undefined,
startContinuous: action(state => {
state.continuous = true;
}),
setProgress: action((state, payload) => {
state.progress = payload;
}),
setComplete: action(state => {
state.progress = 100;
state.continuous = false;
}),
};
export default progress;