mirror of
https://github.com/betagouv/mon-entreprise
synced 2025-02-09 06:25:12 +00:00
Suppression des décorateurs. Problème : Les décorateurs que l'on utilisait correspondait à une ancienne version de la proposal tc39, encore en stage 1 (voir 0). La proposition a complètement évolué, pour ne plus du tout avoir la même forme que précédement. Au lieu de garder la version 'legacy', on choisit de se séparer des décorateur, étant donné que le nouveau use case n'a plus rien à voir, et que l'ancienne version peut être gérée de manière quasi équivalente avec des fonctions et des compose
61 lines
1.5 KiB
JavaScript
61 lines
1.5 KiB
JavaScript
import { EXPLAIN_VARIABLE } from 'Actions/actions'
|
|
import withColours from 'Components/utils/withColours'
|
|
import marked from 'Engine/marked'
|
|
import { findRuleByDottedName } from 'Engine/rules'
|
|
import { compose } from 'ramda'
|
|
import React, { Component } from 'react'
|
|
import { connect } from 'react-redux'
|
|
import { flatRulesSelector } from 'Selectors/analyseSelectors'
|
|
import './Aide.css'
|
|
import References from './rule/References'
|
|
|
|
export default compose(
|
|
connect(
|
|
state => ({
|
|
explained: state.explainedVariable,
|
|
flatRules: flatRulesSelector(state)
|
|
}),
|
|
dispatch => ({
|
|
stopExplaining: () => dispatch({ type: EXPLAIN_VARIABLE })
|
|
})
|
|
),
|
|
withColours
|
|
)(
|
|
class Aide extends Component {
|
|
renderExplanationMarkdown(explanation, term) {
|
|
return marked(`### ${term} \n\n${explanation}`)
|
|
}
|
|
render() {
|
|
let { flatRules, explained, stopExplaining, colours } = this.props
|
|
|
|
if (!explained) return <section id="helpWrapper" />
|
|
|
|
let rule = findRuleByDottedName(flatRules, explained),
|
|
text = rule.description,
|
|
refs = rule.références
|
|
|
|
return (
|
|
<div id="helpWrapper" className="active">
|
|
<section id="help">
|
|
<i
|
|
className="fa fa-times-circle"
|
|
onClick={stopExplaining}
|
|
style={{ color: colours.colour }}
|
|
/>
|
|
<p
|
|
dangerouslySetInnerHTML={{
|
|
__html: this.renderExplanationMarkdown(text, rule.title)
|
|
}}
|
|
/>
|
|
{refs && (
|
|
<div>
|
|
<p>Pour en savoir plus: </p>
|
|
<References refs={refs} />
|
|
</div>
|
|
)}
|
|
</section>
|
|
</div>
|
|
)
|
|
}
|
|
}
|
|
)
|