From 5565cfd818d65a4457cfcea2827501b3fe165505 Mon Sep 17 00:00:00 2001 From: Antoine POPINEAU Date: Tue, 28 Jan 2025 11:19:25 +0100 Subject: [PATCH] Display nodes that were not executed as skipped. (#668) * Display nodes that were not executed as skipped. * fix PR feedbacks --------- Co-authored-by: Antoine Popineau Co-authored-by: Christopher DEBOVE Co-authored-by: Debove Christopher --- .../RootAstBuilderNode/RootOrWithAnd.tsx | 14 ++++++++++++-- packages/app-builder/src/locales/ar/common.json | 3 ++- packages/app-builder/src/locales/en/common.json | 1 + packages/app-builder/src/locales/fr/common.json | 1 + packages/app-builder/src/models/node-evaluation.ts | 3 +++ packages/marble-api/openapis/marblecore-api.yaml | 3 +++ .../marble-api/src/generated/marblecore-api.ts | 1 + 7 files changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/app-builder/src/components/Scenario/AstBuilder/RootAstBuilderNode/RootOrWithAnd.tsx b/packages/app-builder/src/components/Scenario/AstBuilder/RootAstBuilderNode/RootOrWithAnd.tsx index a2c25cea9..467e4cb1d 100644 --- a/packages/app-builder/src/components/Scenario/AstBuilder/RootAstBuilderNode/RootOrWithAnd.tsx +++ b/packages/app-builder/src/components/Scenario/AstBuilder/RootAstBuilderNode/RootOrWithAnd.tsx @@ -201,9 +201,19 @@ function AndOperand({ - {t(`common:${value === null ? 'null' : value}`)} + {t( + `common:${evaluation.skipped ? 'skipped' : value === null ? 'null' : value}`, + )} ); diff --git a/packages/app-builder/src/locales/ar/common.json b/packages/app-builder/src/locales/ar/common.json index 67d049e30..1a46af115 100644 --- a/packages/app-builder/src/locales/ar/common.json +++ b/packages/app-builder/src/locales/ar/common.json @@ -63,5 +63,6 @@ "premium": "ميزة متميزة", "upgrade": "قم بالترقية الآن", "errors.backend_unvailable": "لا يمكن لتطبيق Marble التواصل مع الواجهة الخلفية لـ Marble. \nقم إما بالتحقق من التكوين الخاص بك أو حاول مرة أخرى لاحقًا.", - "errors.firebase_network_error": "يواجه الرخام بعض الصعوبات في الاتصال بـ Firebase. \nقم إما بالتحقق من تكوين Firebase أو حاول مرة أخرى لاحقًا." + "errors.firebase_network_error": "يواجه الرخام بعض الصعوبات في الاتصال بـ Firebase. \nقم إما بالتحقق من تكوين Firebase أو حاول مرة أخرى لاحقًا.", + "skipped": "تخطي" } diff --git a/packages/app-builder/src/locales/en/common.json b/packages/app-builder/src/locales/en/common.json index b2d47ea32..6942fbafc 100644 --- a/packages/app-builder/src/locales/en/common.json +++ b/packages/app-builder/src/locales/en/common.json @@ -1,5 +1,6 @@ { "null": "Null", + "skipped": "Skipped", "true": "True", "false": "False", "from_to": "From {{start_date}} to {{end_date}}", diff --git a/packages/app-builder/src/locales/fr/common.json b/packages/app-builder/src/locales/fr/common.json index 07846b7ad..0733cdd0b 100644 --- a/packages/app-builder/src/locales/fr/common.json +++ b/packages/app-builder/src/locales/fr/common.json @@ -1,5 +1,6 @@ { "null": "Nul", + "skipped": "Omis", "auth.logout": "Se déconnecter", "cancel": "Annuler", "error_one": "erreur", diff --git a/packages/app-builder/src/models/node-evaluation.ts b/packages/app-builder/src/models/node-evaluation.ts index 83866cea1..199d3085e 100644 --- a/packages/app-builder/src/models/node-evaluation.ts +++ b/packages/app-builder/src/models/node-evaluation.ts @@ -47,6 +47,7 @@ export interface NodeEvaluation { errors: EvaluationError[]; children: NodeEvaluation[]; namedChildren: Record; + skipped?: boolean; } export function NewNodeEvaluation(): NodeEvaluation { @@ -55,6 +56,7 @@ export function NewNodeEvaluation(): NodeEvaluation { errors: [], children: [], namedChildren: {}, + skipped: false, }; } @@ -79,5 +81,6 @@ export function adaptNodeEvaluation(dto: NodeEvaluationDto): NodeEvaluation { namedChildren: dto.named_children ? R.mapValues(dto.named_children, adaptNodeEvaluation) : {}, + skipped: dto.skipped, }; } diff --git a/packages/marble-api/openapis/marblecore-api.yaml b/packages/marble-api/openapis/marblecore-api.yaml index 699720a1e..9544d3d14 100644 --- a/packages/marble-api/openapis/marblecore-api.yaml +++ b/packages/marble-api/openapis/marblecore-api.yaml @@ -5174,6 +5174,9 @@ components: type: object additionalProperties: $ref: '#/components/schemas/NodeEvaluationDto' + skipped: + type: boolean + default: false ScenarioValidationErrorDto: type: object required: diff --git a/packages/marble-api/src/generated/marblecore-api.ts b/packages/marble-api/src/generated/marblecore-api.ts index 5e7b107b8..8e3a3e161 100644 --- a/packages/marble-api/src/generated/marblecore-api.ts +++ b/packages/marble-api/src/generated/marblecore-api.ts @@ -119,6 +119,7 @@ export type NodeEvaluationDto = { named_children?: { [key: string]: NodeEvaluationDto; }; + skipped?: boolean; }; export type RuleExecutionDto = { error?: Error;