import React, { Component } from 'react' import ReactDOM from 'react-dom' // import {findRuleByName} from '../engine/rules.js' import './Rule.css' import JSONTree from 'react-json-tree' import R from 'ramda' import PageTypeIcon from './PageTypeIcon' import {connect} from 'react-redux' import mockSituation from '../engine/mockSituation.yaml' import {START_CONVERSATION} from '../actions' import classNames from 'classnames' import possiblesDestinataires from '../../règles/ressources/destinataires/destinataires.yaml' import {capitalise0} from '../utils' import knownMecanisms from '../engine/known-mecanisms.yaml' import marked from '../engine/marked' import References from './References' import {AttachDictionary} from './AttachDictionary' // situationGate function useful for testing : let testingSituationGate = v => // eslint-disable-line no-unused-vars R.path(v.split('.'))(mockSituation) @connect( state => ({ // situationGate: name => formValueSelector('conversation')(state, name), analysedSituation: state.analysedSituation, form: state.form }), dispatch => ({ startConversation: rootVariable => dispatch({type: START_CONVERSATION, rootVariable}), }) ) export default class Rule extends Component { componentDidMount() { // C'est ici que la génération du formulaire, et donc la traversée des variables commence this.props.startConversation('surcoût CDD') } render() { let { match: {params: {name}}, analysedSituation, form } = this.props, objectives = R.path(['formule', 'explanation', 'explanation'])(analysedSituation) if (!objectives) return null let rule = objectives.find(R.pathEq(['explanation', 'name'], name)).explanation if (!rule) { this.props.router.push('/404') return null } let situationExists = !R.isEmpty(form) let destinataire = R.path(['attributs', 'destinataire'])(rule), destinataireData = possiblesDestinataires[destinataire] return (
{rule.description}
Non renseigné
:Cette règle manque de références.
return