mon-entreprise/source/actions/actions.js

65 lines
1.5 KiB
JavaScript
Raw Permalink Normal View History

/* @flow */
import type {
ResetSimulationAction,
LoadPreviousSimulationAction,
DeletePreviousSimulationAction,
StartConversationAction
2018-07-12 08:09:41 +00:00
} from 'Types/ActionsTypes'
import { reset } from 'redux-form'
import { deletePersistedSimulation } from '../storage/persistSimulation'
import { normalizeBasePath } from '../utils'
import type { RouterHistory } from 'react-router-dom'
export const resetSimulation = () => (dispatch: any => void): void => {
dispatch(reset('conversation'))
dispatch(
({
type: 'RESET_SIMULATION'
}: ResetSimulationAction)
)
}
export const deletePreviousSimulation = () => (
dispatch: DeletePreviousSimulationAction => void
) => {
dispatch({
type: 'DELETE_PREVIOUS_SIMULATION'
})
deletePersistedSimulation()
}
export const startConversation = (priorityNamespace: ?string) => (
dispatch: StartConversationAction => void,
_: any,
history: RouterHistory
) => {
dispatch({
type: 'START_CONVERSATION',
...(priorityNamespace ? { priorityNamespace } : {})
})
const currentPath = normalizeBasePath(history.location.pathname)
if (currentPath.endsWith('/simulation/')) {
return
}
history.push(currentPath + 'simulation')
}
// $FlowFixMe
export function setExample(name, situation, dottedName) {
return { type: 'SET_EXAMPLE', name, situation, dottedName }
}
export function loadPreviousSimulation(): LoadPreviousSimulationAction {
return {
type: 'LOAD_PREVIOUS_SIMULATION'
}
}
2018-10-02 16:14:01 +00:00
export function hideControl(id: string) {
return { type: 'HIDE_CONTROL', id }
}
export const EXPLAIN_VARIABLE = 'EXPLAIN_VARIABLE'