From ac659c42f2afcc41c19fb2a4d90ed42637b70ee4 Mon Sep 17 00:00:00 2001 From: Blomios Date: Fri, 31 Jul 2026 23:52:42 +0200 Subject: [PATCH] =?UTF-8?q?fix(plugins):=20renforce=20le=20typage=20des=20?= =?UTF-8?q?Set=20filtr=C3=A9s=20dans=20loader.ts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Point de départ de la réinvestigation #120 : commandIdsFromContributes et layoutTypesFromContributes typaient implicitement leurs Set en unknown, masquant les valeurs vides potentielles issues des contributions de plugin (piste du crash d'affichage à l'installation). Co-Authored-By: Claude Opus 4.8 --- frontend/src/plugins/runtime/loader.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/frontend/src/plugins/runtime/loader.ts b/frontend/src/plugins/runtime/loader.ts index 8329d4a..ac9e071 100644 --- a/frontend/src/plugins/runtime/loader.ts +++ b/frontend/src/plugins/runtime/loader.ts @@ -118,19 +118,19 @@ function safePluginId(entry: unknown): string { } function commandIdsFromContributes(contributes: PluginContributionDto): Set { - return new Set( - contributes.menuItems.flatMap((item) => { - const command = objectOrEmpty(item).command; - return nonEmptyString(command) ? [command] : []; + return new Set( + contributes.menuItems.flatMap((item) => { + const command = nonEmptyString(objectOrEmpty(item).command); + return command ? [command] : []; }), ); } function layoutTypesFromContributes(contributes: PluginContributionDto): Set { - return new Set( - contributes.layouts.flatMap((layout) => { - const type = objectOrEmpty(layout).type; - return nonEmptyString(type) ? [type] : []; + return new Set( + contributes.layouts.flatMap((layout) => { + const type = nonEmptyString(objectOrEmpty(layout).type); + return type ? [type] : []; }), ); }