1
0
Fork 0
mirror of https://github.com/betagouv/mon-entreprise synced 2025-02-09 00:35:00 +00:00
mon-entreprise/source/engine/traverse-common-jsx.js
Mael Thomas b223334028 Amélioration visuelle de la compréhension des calculs
Faire un YAML amélioré, pas plus (pour ne pas avoir un code source et une représentation totalement différente)
Ce qui est inline reste inline.
Factorisation du JSX dans traverse-common-jsx
2017-03-16 16:35:19 +01:00

41 lines
996 B
JavaScript

import React from 'react'
import R from 'ramda'
import classNames from 'classnames'
let treatValue = data => data == null ?
'?'
: ( R.is(Number)(data) ?
Math.round(data)
: ( data ? 'oui' : 'non')
)
let NodeValue = ({data}) =>
<span className={"situationValue " + treatValue(data)}>&nbsp;
{treatValue(data)}
</span>
// Un élément du graphe de calcul qui a une valeur interprétée (à afficher)
export let Node = ({classes, name, value, child}) =>
<div className={classNames(classes, 'node')}>
{name &&
<span className="nodeHead">
<span className="name">{name}</span>
<NodeValue data={value}/>
</span>
}
{child}
{!name && <NodeValue data={value}/>}
</div>
// Un élément du graphe de calcul qui a une valeur interprétée (à afficher)
export let Leaf = ({classes, name, value}) =>
<span className={classNames(classes, 'leaf')}>
{name &&
<span className="nodeHead">
<span className="name">{name}<NodeValue data={value}/></span>
</span>
}
</span>