Commit Graph

46 Commits (d705e7e047647aa208d2cd0efdc7211014503413)

Author SHA1 Message Date
Alexandre Hajjar d705e7e047 🚧 WIP - Building the cycles graph by taking into account parent rule
This contextualization will allow to have a (more complex) graph that
will contain the information of the parent rule of the current rule.
This will allow calling `getApplicableReplacedBy` and thus remove the
flattening logic, which was imperfect.

On the other hand, this needs to make recursive calls to
`ruleDepsOfRule` in case of a reference node, and thus make the graph
much fatter.

Approx TODO (see `ruleDependencies.ts`):

- [ ] refactor to propagate the `parentRuleNode` in the rule
      dependencies
- [ ] build recursive calls into `ruleDepsOfReference`
2020-10-01 12:15:43 +02:00
Alexandre Hajjar bdef762278 Cycles: test against multi-dependencies 2020-09-25 00:41:49 +02:00
Alexandre Hajjar cbc3e74ea7 Cycles: flatten-o-tron fixes and tests 2020-09-24 23:05:08 +02:00
Alexandre Hajjar b5acf267bf Cycles: remove remplace one-level loops 2020-09-24 00:27:43 +02:00
Alexandre Hajjar 394d8e9503 Cycles: refactor for readability 2020-09-22 21:49:14 +02:00
Alexandre Hajjar 4e30ef98b7 Cycles: move hasCycle function into publicodes (useful for unit tests) 2020-09-22 20:11:31 +02:00
Alexandre Hajjar a1bb8bebac Cycles: add DependencyType in the dependency graph 2020-09-22 19:48:06 +02:00
Alexandre Hajjar cfd6f8d813 📝 Split up and document `getApplicableReplacements` 2020-09-08 18:07:58 +02:00
Johan Girod 8a1af58a14 ajoute un test pour les formule non remplacée si référencée depuis la formule du remplacement 2020-09-08 17:11:52 +02:00
Alexandre Hajjar 2793dcd090 Cycles: import fix 2020-06-15 17:09:20 +02:00
Alexandre Hajjar 655b9bf314 Cycles: isDisabledBy & replacedBy 2020-06-15 15:40:01 +02:00
Alexandre Hajjar 5fcc7500c9 Cycles: recalcul visitor update using current rule name context 2020-06-15 15:39:58 +02:00
Alexandre Hajjar 31dccc9989 Cycles: clean up 2020-06-15 15:32:10 +02:00
Alexandre Hajjar b3f51d825e Cycles: clean-up 2020-06-15 15:32:10 +02:00
Alexandre Hajjar e67670f2d7 [silent] Cycles types: rename `Name` -> `Names` 2020-06-15 15:32:10 +02:00
Alexandre Hajjar de4227800b Use as little Ramda as possible 2020-06-15 15:32:09 +02:00
Alexandre Hajjar f99a8f8bd1 WIP ⚙️ Detect cycles: remove RecalculBroken (not needed anymore) 2020-06-15 15:25:35 +02:00
Alexandre Hajjar 2c765a80ba WIP ⚙️ Detect cycles: fix InversionNumMech following master 2020-06-15 15:25:35 +02:00
Alexandre Hajjar f26e2472ac WIP ⚙️ Detect cycles: visit (Non)Applicable nodes 2020-06-15 15:25:34 +02:00
Alexandre Hajjar c96a122d8a WIP ⚙️ Detect cycles: RecalculBroken & visit Formule node 2020-06-15 15:25:34 +02:00
Alexandre Hajjar 47f1620e5d WIP ⚙️ Detect cycles: finish all node types and visitors 2020-06-15 15:25:34 +02:00
Alexandre Hajjar dba5237a74 WIP ⚙️ Detect cycles: improve typing and structure 2020-06-15 15:25:34 +02:00
Alexandre Hajjar ff13a1aae2 WIP ⚙️ Detect cycles: fix typing problems 2020-06-15 15:25:34 +02:00
Alexandre Hajjar c45b78c2e5 WIP ⚙️ Detect cycles: solifidy types and guards 2020-06-15 15:25:34 +02:00
Alexandre Hajjar 78e347b994 WIP ⚙️ Detect cycles in parsed rules 2020-06-15 15:25:34 +02:00
Maxime Quandalle b9ac00a6e8 ⚙️ Supprime l'argument `k` en paramètre des mécanismes 2020-06-06 14:18:45 +02:00
Maxime Quandalle b9f6d8249e ⚙️ Factorise la gestion des composantes hors des mécanismes 2020-06-06 14:18:23 +02:00
Maxime Quandalle 6bb8973809 🎨 Affiche différemment les règles non applicables dans une somme 2020-06-08 11:37:23 +02:00
Maxime Quandalle 38c2051232 ⚙️ Sépare les mécanismes dans des fichiers distincts
Refacto qui avait été commencée sans aller au bout.
Sort aussi quelques fonctions `evaluate` des fonctions de parsage
lorsque qu'elle n'utilisent pas les paramètres de `parse`.
2020-06-04 13:57:49 +02:00
Maxime Quandalle 7a2e7cff4d 🔥 Supprime la variable de contexte useDefaultValue 2020-06-04 12:36:58 +02:00
Maxime Quandalle ac8f09fd16 ⚙️ Intégre les missingVariables dans le moteur 2020-06-04 12:36:58 +02:00
Johan Girod d3fb23b2bb 🐎 charge la coloration syntaxique uniquement si besoin
- enlève la librairie react-syntax-highlighting des dépendances de publicodes
- affiche un fallback avec le code source non coloré pendant le chargement de la librairie
2020-06-03 18:11:33 +02:00
Johan Girod 9e81494e5e 🐎 mécanisme recalcul : si la situation ne change pas, le cache n'est pas supprimé 2020-06-03 14:41:11 +02:00
Johan Girod 16d5696378 🎨 améliore la gestion du `line-height` dans l'application 2020-05-28 12:24:49 +02:00
Johan Girod 3e978a6986 rajoute le bouton 'voir source' sur la documentation publicode 2020-05-27 11:45:01 +02:00
Johan Girod 60cae1f5ce 🐛 corrige une erreur dans l'affichage d'unité avec pourcentage 2020-05-26 17:33:26 +02:00
Johan Girod b175945d78 ajoute un prototype d'interface pour les warnings du moteur 2020-05-26 16:40:22 +02:00
Johan Girod 2351726034 corrige les tests 2020-05-26 16:15:12 +02:00
Johan Girod e4bcb40aa2 ⬆️ bump publicodes to beta.3 2020-05-26 15:01:57 +02:00
Johan Girod 612ea77cfc Ajoute les explications des mécanismes sur la documentation publicodes 2020-05-26 13:20:54 +02:00
Johan Girod 1e43f3d758 🔥 change l'api de formatValue pour une version plus cohérente 2020-05-25 17:06:15 +02:00
Johan Girod c6459f6d3c 🎨 precharge les images du moteur en blob
Ce, afin de ne pas à avoir à gérer les fichiers importés. Ceci étant dit, c'est une solution temporaire. Dans le futur, il faudrait plutôt se baser sur les balise og des sources
2020-05-19 19:31:04 +02:00
Johan Girod f3c9d7c60d 🐛 corrige le montant de la CSG dans l'aide aux indépendants
note : il faudra songer sérieusement à modifier ce mécanisme de composante, source de nombreux bug (cf #874)

Ajoute des tests de non regressions pour la page d'aide
2020-05-19 18:07:19 +02:00
Johan Girod aa2525d7df 🎨 Améliore le style des règles
Et abandonne l'import de feuille de style dans le moteur pour lui préférer les styled-components
2020-05-19 16:43:18 +02:00
Johan Girod aad6eee12f Investigue la publication du paquet npm publicode 2020-05-18 16:44:12 +02:00
Johan Girod d91283cde2 🔥 Sépare le moteur dans un packet isolé 2020-05-14 15:25:22 +02:00