diff --git a/200.html b/200.html new file mode 100644 index 000000000..6703a9b71 --- /dev/null +++ b/200.html @@ -0,0 +1,15 @@ + + + + + + Syso + + + + +
+ + + + diff --git a/index.html b/index.html index cde98b8b1..6703a9b71 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ -
lOl
+
diff --git a/package.json b/package.json index 99e16db61..0f8f1c608 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,7 @@ }, "scripts": { "start": "node source/server.js", - "compile": "NODE_ENV='production' webpack --config source/webpack.config.js --optimize-minimize --optimize-dedupe --optimize-occurrence-order", + "compile": "NODE_ENV='production' webpack --config source/webpack.config.js", "surge": "npm run compile && surge --domain scientific-wish.surge.sh -p ./ && rm -rf dist/" } } diff --git a/règles/destinataires/URSSAF.png b/règles/destinataires/URSSAF.png new file mode 100644 index 000000000..f8ca2fa5b Binary files /dev/null and b/règles/destinataires/URSSAF.png differ diff --git a/règles/destinataires/URSSAF.svg b/règles/destinataires/URSSAF.svg new file mode 100644 index 000000000..40d83c4e9 --- /dev/null +++ b/règles/destinataires/URSSAF.svg @@ -0,0 +1,193 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/règles/destinataires/destinataires.yaml b/règles/destinataires/destinataires.yaml new file mode 100644 index 000000000..8ac2f5fe3 --- /dev/null +++ b/règles/destinataires/destinataires.yaml @@ -0,0 +1,9 @@ +OPCA: + nom: Organisme paritaire collecteur agréé + lien: https://fr.wikipedia.org/wiki/Organisme_paritaire_collecteur_agréé +URSSAF: + image: URSSAF.png + lien: https://fr.wikipedia.org/wiki/URSSAF +salarié: + nom: Le salarié + image: salarié.png diff --git a/règles/destinataires/salarié.png b/règles/destinataires/salarié.png new file mode 100644 index 000000000..17553bd88 Binary files /dev/null and b/règles/destinataires/salarié.png differ diff --git a/règles/références/URSSAF.png b/règles/références/URSSAF.png new file mode 100644 index 000000000..4de1051ad Binary files /dev/null and b/règles/références/URSSAF.png differ diff --git a/règles/références/marianne.png b/règles/références/marianne.png new file mode 100644 index 000000000..0427716f0 Binary files /dev/null and b/règles/références/marianne.png differ diff --git a/règles/références/références.yaml b/règles/références/références.yaml new file mode 100644 index 000000000..2f203c676 --- /dev/null +++ b/règles/références/références.yaml @@ -0,0 +1,8 @@ +# Associtions d'URL de références avec leur logo + +service-public.fr: + image: marianne.png +urssaf.fr: + image: URSSAF.png +gouv.fr: + image: marianne.png diff --git a/règles/rémunération-travail/cdd/CIF.yaml b/règles/rémunération-travail/cdd/CIF.yaml index 693651aa2..d7317ed6b 100644 --- a/règles/rémunération-travail/cdd/CIF.yaml +++ b/règles/rémunération-travail/cdd/CIF.yaml @@ -1,8 +1,10 @@ - Cotisation: CIF CDD attache: Salariat . CDD - description: Contribution au financement du congé individuel de formation spécifique aux CDD + description: Contribution au financement du congé individuel de formation spécifique aux CDD. attributs: - collecteur: OPCA + destinataire: OPCA + dû par: employeur + références: Code du travail - Article L6322-37 : https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000022234996&cidTexte=LEGITEXT000006072050 diff --git a/règles/rémunération-travail/cdd/indemnité_compensatrice_congés_payés.yaml b/règles/rémunération-travail/cdd/indemnité_compensatrice_congés_payés.yaml index cd984ed62..9aa564992 100644 --- a/règles/rémunération-travail/cdd/indemnité_compensatrice_congés_payés.yaml +++ b/règles/rémunération-travail/cdd/indemnité_compensatrice_congés_payés.yaml @@ -1,14 +1,17 @@ - Indemnité: compensation des congés payés attache: Salariat . CDD + attributs: + destinataire: salarié + dû par: employeur description: | Le salarié en CDD bénéficie des mêmes droits à congés payés que le salarié en CDI. Il acquiert et prend ses congés payés dans les mêmes conditions. Il est cependant courant que le salarié ne puisse pas prendre tous ses congés avant le terme de son contrat, il bénéficie d'une indemnité compensatrice de congés payés. references: - fiche (service-public.gouv.fr): https://www.service-public.fr/particuliers/vosdroits/F2931 + Fiche service-public.gouv.fr: https://www.service-public.fr/particuliers/vosdroits/F2931 + Code du travail - Article L3141-24: https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006072050&idArticle=LEGIARTI000006902661&dateTexte=&categorieLien=cid Congés payés et contrat CDD: https://www.easycdd.com/LEGISLATION-CDD/L-embauche-le-suivi-du-contrat-CDD-les-incidents-frequents/Conges-payes-et-contrat-CDD - Code du travail Article L3141-24: https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006072050&idArticle=LEGIARTI000006902661&dateTexte=&categorieLien=cid non applicable si: l'une de ces conditions: diff --git a/règles/rémunération-travail/cdd/indemnité_fin_contrat.yaml b/règles/rémunération-travail/cdd/indemnité_fin_contrat.yaml index 9d9c331fd..1aa77f64a 100644 --- a/règles/rémunération-travail/cdd/indemnité_fin_contrat.yaml +++ b/règles/rémunération-travail/cdd/indemnité_fin_contrat.yaml @@ -2,6 +2,8 @@ attache: Salariat . CDD attributs: type: indemnité + destinataire: salarié + alias: prime de précarité description: Somme versée en fin de CDD comme compensation de précarité. notes: Attention, les exceptions sont légion. Conventions collectives. @@ -43,8 +45,8 @@ références: Code du travail - Article L1243-8: https://www.legifrance.gouv.fr/affichCode.do?idSectionTA=LEGISCTA000006189459&cidTexte=LEGITEXT000006072050 - Fin du CDD (service-public.gouv.fr): https://www.service-public.fr/particuliers/vosdroits/F40 - La prime de précarité est-elle due [...] (service-public.gouv.fr): https://www.service-public.fr/particuliers/vosdroits/F803 - Saisonnier (travail-emploi.gouv.fr): http://travail-emploi.gouv.fr/droit-du-travail/contrats-et-carriere/contrats-de-travail/article/le-travail-saisonnier - La prime de précarité n'est pas due si [...] (easycdd.com): https://www.easycdd.com/LEGISLATION-CDD/Fin-ou-rupture-du-contrat-CDD/La-prime-de-precarite/La-prime-de-precarite-n-est-pas-due-si - Pourusuite de l'activité après la fin du CDD (easycdd.com): https://www.easycdd.com/LEGISLATION-CDD/Fin-ou-rupture-du-contrat-CDD/Poursuite-de-l-activite-apres-la-fin-du-contrat-CDD + Fiche Fin du CDD: https://www.service-public.fr/particuliers/vosdroits/F40 + Fiche La prime de précarité est-elle due: https://www.service-public.fr/particuliers/vosdroits/F803 + Le travail saisonnier: http://travail-emploi.gouv.fr/droit-du-travail/contrats-et-carriere/contrats-de-travail/article/le-travail-saisonnier + La prime de précarité n'est pas due si: https://www.easycdd.com/LEGISLATION-CDD/Fin-ou-rupture-du-contrat-CDD/La-prime-de-precarite/La-prime-de-precarite-n-est-pas-due-si + Poursuite de l'activité après la fin du CDD: https://www.easycdd.com/LEGISLATION-CDD/Fin-ou-rupture-du-contrat-CDD/Poursuite-de-l-activite-apres-la-fin-du-contrat-CDD diff --git a/règles/rémunération-travail/cdd/majoration-chomage.yaml b/règles/rémunération-travail/cdd/majoration-chomage.yaml index 33a485e61..1f3a466b1 100644 --- a/règles/rémunération-travail/cdd/majoration-chomage.yaml +++ b/règles/rémunération-travail/cdd/majoration-chomage.yaml @@ -3,6 +3,7 @@ attributs: dû par: employeur type: majoration + destinataire: URSSAF description: Majoration des contributions patronales d’assurance chômage pour les contrats à durée déterminée courts (CDD) non applicable si: @@ -21,8 +22,8 @@ durée contrat <= 3: 0.5% références: - Circulaire Unédic (unedic.fr): http://www.unedic.org/sites/default/files/ci201317_1.pdf - La mojoration de la contribution chômage (urssaf.fr): https://www.urssaf.fr/portail/home/employeur/calculer-les-cotisations/les-taux-de-cotisations/lassurance-chomage-et-lags/la-majoration-de-la-contribution.html + La mojoration de la contribution chômage: https://www.urssaf.fr/portail/home/employeur/calculer-les-cotisations/les-taux-de-cotisations/lassurance-chomage-et-lags/la-majoration-de-la-contribution.html + Circulaire Unédic: http://www.unedic.org/sites/default/files/ci201317_1.pdf notes: | - L'URSSAF liste à la fois des conditions pour "Les CDD concernés par l’application de la majoration" et pour "Les contrats de travail exclus de la majoration". Un doute persiste : difficile de savoir si les premières suffisent au calcul (donc que les deuxièmes sont là pour enlever les doutes) ou si les deuxièmes peuvent faire exception... diff --git a/source/components/Rule.css b/source/components/Rule.css index e3198f03e..13d8a7b08 100644 --- a/source/components/Rule.css +++ b/source/components/Rule.css @@ -43,23 +43,89 @@ display: flex; justify-content: flex-start; min-height: 5em; + margin-left: 1%; +} + +#rule-meta > div { + margin-right: 5%; } #meta-paragraph { - background: rgba(51, 51, 80, 0.03); - margin: 0 3em; + /*background: rgba(51, 51, 80, 0.03);*/ + /*margin: 0 3em;*/ padding: 1em; + width: 40%; + +} +#meta-paragraph p { + /*border-left: 3px solid #333350;*/ + padding-left: 1em; + color: #444; + font-size: 95%; } -#rule-meta #rule-references { +#destinataire a { + text-decoration: none; + color: inherit; +} +#destinataire img { + width: 130px; + display: block; +} +#destinataireName { + width: 130px; + text-align: center; + font-size: 70%; + line-height: 1em; + margin-top: .3em; +} +#destinataire #calligraphy { + color: #5B5B73; + border: 2px solid #5B5B73; + border-radius: .4em; + width: 130px; + line-height: 2em; + font-size: 130%; + font-weight: bold; + text-align: center; +} + + +#references { font-size: 85%; list-style: none; padding-left: 1em; + color: #333350; } -#rule-meta #rule-references li i { - margin: 0 1em; - color: #333350 +#references a { + color: inherit; + /*text-decoration: none;*/ } +#references li { + margin-bottom: .15em; +} +#references .meta { + text-align: right; + width: 16em; + margin-right: 1.5em; + display: inline-block; + font-size: 75%; +} +#references .url { + font-weight: 600; + color: white; + background: #333350; + border-radius: .4em; + font-style: italic; + padding: .05em .6em; +} +#references img { + vertical-align: sub; + height: 1.2em; + border-radius: .3em; + margin-left: .6em; +} + #rule-rules { display: inline-flex; justify-content: start; @@ -84,6 +150,7 @@ border: none; font-size: 120%; padding: .5em; + margin: auto; } #rule-rules section { diff --git a/source/components/Rule.js b/source/components/Rule.js index 124495eb9..24f2b5da9 100644 --- a/source/components/Rule.js +++ b/source/components/Rule.js @@ -10,6 +10,8 @@ import {formValueSelector} from 'redux-form' import mockSituation from '../engine/mockSituation.yaml' import {START_CONVERSATION} from '../actions' import classNames from 'classnames' +import destinataires from '../../règles/destinataires/destinataires.yaml' +import references from '../../règles/références/références.yaml' // situationGate function useful for testing : let testingSituationGate = v => // eslint-disable-line no-unused-vars @@ -54,6 +56,10 @@ export default class Rule extends Component { situationExists = !R.isEmpty(form), showValues = situationExists && this.state.showValues + let destinataire = R.path(['attributs', 'destinataire'])(rule), + destinataireData = destinataires[destinataire] + + return (
@@ -61,23 +67,28 @@ export default class Rule extends Component { {rule.type} {name} -
+

{rule.description}

+
+

Destinataire

+ + {destinataireData.image && + } + {!destinataireData.image && +
{destinataire}
+ } +
+ {destinataireData.nom &&
{destinataireData.nom}
} +
-

Propriétés

-

Références

{this.renderReferences(rule)}
-

Pourquoi cette règle me concerne ? Comment est-elle calculée ? C'est pas très lisible pour l'instant, mais ça le deviendra

{ do { let [,cond] = @@ -107,22 +118,32 @@ export default class Rule extends Component { ) } - renderReferences(rule) { + renderReferences({'références': refs}) { + if (!refs) return

Cette règle manque de références.

+ return ( - rule['référence'] &&
{rule['référence']}
) - || ( - rule['références'] &&
    - {R.toPairs(rule['références']).map( - ([name, link]) => -
  • - {link.indexOf('legifrance.gouv') >= 0 && - - } +
      + {R.toPairs(refs).map( + ([name, link]) => { + let refkey = Object.keys(references).find(r => link.indexOf(r) > -1), + refData = refkey && references[refkey] || {}, + domain = (link.indexOf("://") > -1 + ? link.split('/')[2] + : link.split('/')[0]).replace('www.', '') + + return
    • + + + {domain} + {refData.image && + } + + {name}
    • - )} + })}
    ) } diff --git a/source/crédits-icônes.yaml b/source/crédits-icônes.yaml new file mode 100644 index 000000000..05732f0d2 --- /dev/null +++ b/source/crédits-icônes.yaml @@ -0,0 +1 @@ +- https://thenounproject.com/search/?q=employee&i=859814