From e32a7d7540a9e4d3340a28ee4e3262573b9c36bd Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Fri, 31 Jan 2025 20:23:18 +0100 Subject: [PATCH] =?UTF-8?q?Tri=20alphab=C3=A9tique=20des=20choix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Permet d'avoir un choix prévisible quand plusieurs choix s'appliquent (par exemple plusieurs compétences) --- module/misc.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/module/misc.js b/module/misc.js index 72530790..775dd2bc 100644 --- a/module/misc.js +++ b/module/misc.js @@ -238,7 +238,7 @@ export class Misc { /* -------------------------------------------- */ static findFirstLike(value, elements, options = {}) { options = foundry.utils.mergeObject(DEFAULT_FIND_OPTIONS, options, { overwrite: true, inplace: false }); - const subset = this.findAllLike(value, elements, options); + const subset = this.findAllLike(value, elements, options) if (subset.length == 0) { console.log(`Aucune ${options.description} pour ${value}`); return undefined @@ -263,7 +263,8 @@ export class Misc { } value = Grammar.toLowerCaseNoAccent(value); const subset = elements.filter(options.preFilter) - .filter(it => Grammar.toLowerCaseNoAccent(options.mapper(it))?.includes(value)); + .filter(it => Grammar.toLowerCaseNoAccent(options.mapper(it))?.includes(value)) + .sort(Misc.ascending(it => options.mapper(it))) if (subset.length == 0) { options.onMessage(`Pas de ${options.description} correspondant à ${value}`); }