import React, {Component} from 'react'
import './CDD.css'
import {reduxForm, formValueSelector, reset} from 'redux-form'
import {connect} from 'react-redux'
import './conversation/conversation.css'
import {START_CONVERSATION} from '../actions'
import Aide from './Aide'
import R from 'ramda'
import {Redirect, Link, withRouter} from 'react-router-dom'
import {createMarkdownDiv} from '../engine/marked'
import './Simulateur.css'
import classNames from 'classnames'
import {findRuleByName, decodeRuleName} from '../engine/rules'
import {capitalise0} from '../utils'
let situationSelector = formValueSelector('conversation')
@withRouter
@reduxForm({form: 'conversation', destroyOnUnmount: false})
@connect(
state => ({
situation: variableName => situationSelector(state, variableName),
foldedSteps: state.foldedSteps,
unfoldedSteps: state.unfoldedSteps,
themeColours: state.themeColours,
analysedSituation: state.analysedSituation,
}),
dispatch => ({
startConversation: rootVariable => dispatch({type: START_CONVERSATION, rootVariable}),
resetForm: rootVariable => dispatch(reset('conversation'))
})
)
export default class extends React.Component {
componentWillMount() {
let {
match: {
params: {
name: encodedName
}
}
} = this.props,
name = decodeRuleName(encodedName)
this.encodedName = encodedName
this.name = name
this.rule = findRuleByName(name)
// C'est ici que la génération du formulaire, et donc la traversée des variables commence
if (this.rule.formule)
this.props.startConversation(name)
}
render(){
if (!this.rule.formule) return
Simulez cette règle en quelques clics
}Pour simplifier, les résultats sont calculés par mois de contrat, et pour un temps complet.
N'hésitez pas à nous écrire ! La loi française est très ciblée, et donc complexe. Nous pouvons la rendre plus transparente.
Nous n'avons plus de questions : votre simulation est terminée.
Cliquez sur les obligations en bas pour comprendre vos résultats.
Une remarque ? Écrivez-nous !