From 426eb911c9ae2dcac833c99c95e8a488f36a0bea Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Sun, 11 Oct 2026 23:34:28 -0400 Subject: [PATCH] [IMP] card and priority editor: red circled cross, number weight field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A tag's « Retirer » text button read like plain text, and the weight of a criterion took a whole column for a number from 1 to 100. The card now removes a tag with a red circled cross, shown in write mode only, named « Retirer « tag » » for screen readers, with a 24 px target; the red has its own token, exempted from the conflict-hue rule and limited to card surfaces. The weight is a narrow number field, still read and refused as before. Checked: node 4597, navigateur 965; captures 04a and 10a republished. --- FR --- [IMP] fiche et priorités : croix rouge cerclée, poids en champ nombre Le bouton texte « Retirer » d'une étiquette se lisait comme du texte, et le poids d'un critère prenait toute une colonne pour un nombre de 1 à 100. La fiche retire désormais une étiquette par une croix rouge cerclée, en mode écriture seulement, nommée « Retirer « étiquette » » pour les lecteurs d'écran, sur une cible de 24 px ; le rouge a son jeton, exempté de la règle des teintes de conflit et borné aux surfaces de la fiche. Le poids est un champ nombre étroit, lu et refusé comme avant. Vérifié : node 4597, navigateur 965 ; captures 04a et 10a republiées. Assisted-by: Claude Opus 5.5 --- GUIDE-USAGE.md | 4 +- README.md | 1 + doc/captures/04a-etiquettes.png | Bin 83176 -> 84768 bytes doc/captures/10a-ordre-priorites.png | Bin 92575 -> 92590 bytes doc/captures/manifeste.json | 4 +- spec.md | 15 ++-- src/application/commandes_mobilier.js | 4 ++ src/interface/generation/Priorites.svelte | 13 +++- .../generation/Reglages.navigateur.test.js | 13 +++- src/interface/jetons.css | 31 +++++--- src/interface/marques.js | 11 +++ src/interface/marques.test.js | 4 +- src/interface/palette.js | 18 ++--- src/interface/palette.test.js | 22 +++++- src/interface/participants/Fiche.svelte | 49 +++++++------ .../Participants.navigateur.test.js | 67 ++++++++++++------ src/interface/primitives/Champ.svelte | 31 +++++++- src/interface/primitives/Commande.svelte | 43 +++++++++-- src/interface/primitives/Icone.svelte | 9 ++- src/interface/primitives/commande.js | 21 ++++-- src/interface/primitives/commande.test.js | 10 ++- .../primitives/habillage.navigateur.test.js | 24 +++++++ src/interface/primitives/icones.js | 2 + src/interface/primitives/icones.test.js | 2 +- .../primitives/primitives.navigateur.test.js | 40 +++++++++++ test/navigateur/ecrans.js | 2 +- 26 files changed, 344 insertions(+), 96 deletions(-) diff --git a/GUIDE-USAGE.md b/GUIDE-USAGE.md index a6f8ba0..e606c56 100644 --- a/GUIDE-USAGE.md +++ b/GUIDE-USAGE.md @@ -148,8 +148,8 @@ nulle part. ![La fiche d’une personne : ses étiquettes, le champ d’ajout, une orthographe reçue sous celle de l’événement](doc/captures/04a-etiquettes.png) -*Chaque étiquette est une pastille grise, suivie de sa commande « Retirer ». -Tapez une ou plusieurs étiquettes séparées par une virgule, puis « Ajouter » +*Chaque étiquette est une pastille grise ; en écriture, une petite croix +rouge cerclée la suit, qui la retire. Tapez une ou plusieurs étiquettes séparées par une virgule, puis « Ajouter » ou Entrée. Ici, « FINANCE » s’enregistre sous « Finance », l’orthographe que l’événement porte déjà, et le logiciel le dit sous le champ : une même étiquette ne s’écrit jamais de deux façons. La légende, au-dessus de la diff --git a/README.md b/README.md index 210a8f8..a157b39 100644 --- a/README.md +++ b/README.md @@ -103,6 +103,7 @@ sur les captures. | `--couleur-pastille-texte` | texte | 4,5 | — | — | 14,51 | 19-ajustement | | `--couleur-poignee` | marque | 3 | 7,44 | 07-plan-tables | 11,32 | 07-plan-tables | | `--couleur-refus` | texte | 4,5 | 8,34 | 01b-passer-en-ecriture | 8,14 | 01b-passer-en-ecriture | +| `--couleur-retrait` | marque | 3 | 5,62 | 04a-etiquettes | 5,96 | 04a-etiquettes | | `--couleur-selection` | marque | 3 | 4,57 | 08-animateurs-designes | 4,18 | 08-animateurs-designes | | `--couleur-table-trait` | marque | 3 | 7,44 | 07-plan-tables | 5,59 | 07-plan-tables | | `rgb(24, 33, 47)` | texte | 4,5 | — | — | 16,19 | 22-plan-brouillon | diff --git a/doc/captures/04a-etiquettes.png b/doc/captures/04a-etiquettes.png index fc7e9eba854845346f95053953f017ea4d1e2229..2091214b11a865572ab2e46270df14dcfdd9c15a 100644 GIT binary patch literal 84768 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

;mXYgrR}dzOg|{kXxy>c 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 A00000 literal 83176 zcmbTdW0WOZ(=A+GwrzB|%U!l@+wQV$+qP|V**3du+phZdIp;ag`+oPw{c-omvB$_= zm6>bhS`jg0#*8pI8BsWBY-k`LAUJU`Aq5~HFclym;0{P&z%LOb4s<|3h(O{({7SBw z=UHHUsM4suDVLX*iE<2xC@>7Q?f-r_<>iIi+S~VhhHrC@>{?nNT*NxAcwbn_wkFP} zJeW91s!dJ>2qFFdJrvfEND)E#|2@h;a-o3!d&YkXY6i^r@89@iIliR>{r3#9P{x-G z=zm>`@_)V5kInDjXTnB@g`Z-kj#5*Nk5NlVNT7&mlk)Pia*}Y9kdTsbwH6kp(sipv zfWj2~V4P=~S1jlcICWK5D%Pkc&i|j$i*1NVD=rVr5pg}c=*X~?;(~#>fhwrR#l`{` z$xDbVjZBb@EK{=+1s99fqYHz+9UdC#(;!0{sf&$|V5hHuzI}*=#}uE`JvJRft4gxW zfcpM3z6Ga+pASk4O~77V$dI?J=*@5mC#= z&#xipT(+;XcP>IS{_^Nyb&i!lxnC8f<`AFNO*HA=O+R9`rGe_9sjdMN4B|s9#D$iy zsK14_zYW*xr>3HiQ<5h~48$;}4BJIU*6W!XlM3m^G9L}x?%`0+Zlko#JH+NMXNR@& z%lq;nK@3Def5_y!D8zRR(pc!U9F~q4MqUilM?qircuy}Co}q+MmeyX>sQOBnK>`y6 z{RM2c%hGBW;%9sPa`PgKFpUi9Uke1+R9c%`S{r+=Z)#eE0x5u?&K^7j>0VIU+M1f$ znmbfhD`Q_^4Xq{iTO`&Zy0p|xFeO@dlZy~BkTXiNO^}q5l5)p2rBc|^-4<1InU zkdCo5P*D$uMMIDv`|xPEQ5YENj<5NmT^=HH(a}6xJ>=y1vrA`AxJf{f+<5l#>rpNLX7^art_0yuH+t z2$+bS;c>pgL*sR5%pzSVh@vV%M2*~>n9$F`8}dgQllOTo&k2_LqQnD#)rrxoYRf=U}9{&jkl+w%mfb!5`Z zY40(}>s$7dhm)o3JIOoGmNcw8r@NU=bxZI)aV&JNMk}g4Iyk^o-aESynKNG;Opeda zkbwJUd#$gkX+U$7CRCk7_!MZM?q5u-*J8UMVAg`YyIq&XQQ0t_G1#6$dWK6dw(SPq zt8_)4K2kF>j`lFl_b`OAv5(CKRW)T*BM{L&kFfa>Euycq+nq-p1yUmkR_Jz@nFRPM z)#z6W63$|Dy#?%J*cy+^te4)$szev2z@ySEmn+}qQwT!Sf$n<{e(A~(E+W|F3mm6$ z*5b1@pU&pL{h3$@bZLnxA`|LEGnNKq_kSYy~p8`)PB;2&=x&(E*yZE0m?9G9buh>I+t1mA4SV!gsom^c&H5nGs^ ziCIxuOj=VKpEl(|tx}p06ckhz#{BvAh5g+&8^KSv%g@d2#TF3>O>(9nH`n%0AlSq_ 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 LAIZR_9>4m3&Wx}n diff --git a/doc/captures/10a-ordre-priorites.png b/doc/captures/10a-ordre-priorites.png index c3f9fa14051e6351a426d6f9d584fc90e2adeb41..61c51fe3d94ecdb706c946ae6221b66311ffe1a9 100644 GIT binary patch delta 37395 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%0AjOx7<8?Y5!l1U5 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 delta 37451 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%0A@=>RV`Ktvy9V02DD79s(Yk5lSe+OpXXId8$90 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

    Ps>z~-F%RgzEAbh^#hXLIeW2vE1Z0=hIuyG z@VAaVqEU#Ia!D#!Eo&Q`0Bxf=Z*jD%eh(^ABD#j{7J5)`eTg$pS5Xwd@e&jIIj9`Y z%SkNY6hMz^X2utA2F!*2JOjX}l4_`0bnXfNQz*{={}hU|BdAM;_d>yT#g(1R(b@H( zX=<{DAZ^LMS#fQW;+T?e5YEaNBsX(!=k#;XhYxp|<>jR}i@r&dyIHQsfh$WgU~B!# za0~?BCGxw!kItw~w~5l!^65oXxT*ELNvDz;k{8}q=xOv{Bq8-ykW*ucFt9Q;Ww60> zyVE+MAfe3~I^RJeWHmoxa>QGtKZ$IHp)}0v?>D5UcXf6WvRVsHZ9p;*vCQv% zSuzf!^DtmRkL~o;7p#r-UKjHuAQ^o(0L1#VF9;4uyh8-<+Vt@FIl1#At1reES z(>MY>Om2u0L_a(-HXctiD9E7i;ujL~*?&2nl@U1%;tV3c_}#h-NIuKdo}TYVm!Ahp zP0JdO=iVyP^Z8-W26jQ;*#PURKiaqimN|8sR;#K_;aNyIT!YvXbgU<4sBJ;4w% zl=pcShXxKm9j1OZtfoLv#Q5Uei*p@_&~xKE5esysa`y+~^qn5t6L<*9Jz#PSTj;_| zp}^L|Fo4OS23svYZUk!t`Hp&p`Ywc%#4vpy$Q9ANgSu|fta4nvcV{CgIAi~|p`4NE z@)>(OVRl?X0@I;8ESbUK2m?Bjt7Ce65xOYrLD@_;&do-;P-0)carDW zsGO#vYmx?yzm;6%CQ2`~aNEp|0tr|_pH-sOd+)f{gfD9xwlXBkI<3ozcAl(OLN-1;+oY$khE)QH1tn}I%jq0i@-2JUjf)e(=rz`ww= z_h(@qwd%Rt|1*wIJZ;49f&5|L^QEZ?1t>4qu4uu}i;vD-jClRt>m=?lx#D$0%HbFq zKh&7HdP@^rY*c%YLVJ`f>(lmTR9#1{ zob1KB^7GK&aKMQAvyImGssTV-&=|qYzN1sG`@z<2uWOZ23>0aBzA1r{Pm49g>IOrf zq@CdfQHm(h_T@x>l8TfcKQBOyEbmKyVMeA=e(eZL~8!yzIi<_SZ5cL(l zd%?a;%Z{2}pAXhuZzV5FfR)E}30p=wra^*R;79SFi2#!uQcCM(5YSAlnc0|PSaT(q z;JHx~Mk9YW(&8%~I+EqW-v30hH2hB_OZQap(m$2mYS=%aMf^tqTDgq_gT!4L19<_gd_ij)LXSdedHCe>0aFH+=??_{C zI)D55*3^=78S53~1!Q30aJpeb3Y?1-`HoS@Rvu!zlzY-Tie`vK*lH+j;$ltHrk+Y^Q-2ehkIs2 zBnF1q=FH<94%m}kZWicWW_I@X`T08FZriSsKZf)v#kRh^g{J~9`;#8xMKhN=f=e)N zO?UT*x>Ne8APF%TY=H5)J}`St>mdzu49^Lb+wgdf6Z>5P)f9Qo1pkX4Db0Ry3`MLl zJ~CJ^pW56t_4C�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 diff --git a/doc/captures/manifeste.json b/doc/captures/manifeste.json index 67b3249..77d180c 100644 --- a/doc/captures/manifeste.json +++ b/doc/captures/manifeste.json @@ -5,7 +5,7 @@ {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"8d1cd5dd73bd16239e76e7a38c6a227c1a283c5377a6b02ee72a2f28f5f42b9c","etape":"2","etat":"4acf3230b0733a35d33c6baf84b7d4f312e98a5b799147dcea6b3bb5d4f082d5","facteurEchelle":1,"fichier":"02b-import-cp1252","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"173368cf8cf2bf154e6ddba1fd46d7ae149dd6e436e2bd000a2e7630042112c5"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","0 participant","1 table · 8 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Import","Choisissez un fichier CSV ou déposez-le sur la fenêtre ; une plage collée dans la grille des participants arrive ici. Rien ne s'importe avant l'aperçu.","Choisir un fichier CSV…","Contenu du fichier","Participants","Objectifs de table","Aperçu","Mode de l'import","Ajouter","Mettre à jour","Remplacer","Fichier","participants_cas_limites_cp1252.csv","Encodage","windows-1252","Séparateur","virgule","Colonnes","En-tête","Devient","Nom","nom","Prénom","prénom","Organisation","appartenance","Courriel","courriel","Rôle","titre pressenti","Exclu","exclu","Notes","notes","Étiquettes","étiquettes","Téléphone","non reconnue : ignorée","13","lignes valides","Ligne","nom","prénom","appartenance","courriel","titre pressenti","exclu","notes","étiquettes","2","Lanterneau","Basile","Chœur de l’Anse","basile.lanterneau@exemple.test","animation","Finance","Montréal","3","Pommerel","Capucine","Société des Hérons","capucine.pommerel@exemple.test","bénévole","ressources humaines","4","Marbrelle","Gaspard","Cercle des Saules","animation","Finance","5","Sablonnet","Ysaline","Chœur de l’Anse","6","Givrecœur","Anselme","anselme.givrecoeur@exemple.test","7","Tourterel","Héloïse","Cercle des Saules","oui","S’est désistée la veille","8","Fenouillet","Côme","Société des Hérons","végétarien; sans noix, ni arachides","9","Coudraie","Apolline","Chœur de l’Anse","Arrive après le premier tour repart avant le dessert","10","Lanterneau","Basile","Chœur de l’Anse","11","Brunœil","Cercle des Saules","brunoeil@exemple.test","12","Ormelin","Faustine","Société des Hérons","14","Ardoisier","Edgar","Société des Hérons","15","Cressonnier","Bertille","Cercle des Saules","Refus","Lignes refusées","Ligne","Motif","13","Le nom manque.","Information","Orthographes fondues en une appartenance","affichée :","Société des Hérons","Société des Hérons","3","lignes","Societe des herons","1","ligne","Information","Orthographes fondues en une étiquette","retenue :","Finance","orthographes :","Finance",",","finance","—","1","ligne réécrite","Avis","Doublons signalés, jamais fusionnés","lignes","2","10","Importer","Enregistrer les lignes refusées","Fermer l'aperçu"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"9a4259c93a4224fa2a394b4d3a4b748eae52bc126689428d8b8aca8b7e4ef8de","etape":"2","etat":"bb0e3ac780cce888c1e69ea95d1a96a7b77bbd49e2ce6e815ddbcb8e4bdfc65f","facteurEchelle":1,"fichier":"03-import-rapport","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"59a799f28e555e3571f62ea55379902f62f225c5ed8c9ef926d6a05611fc0698"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","1 table · 8 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Il manque 4 places à chaque tour pour asseoir toutes les personnes : ajouter des tables ou des sièges, ou exclure des personnes, rend la génération possible.","Ouvrir les tables","Import","Choisissez un fichier CSV ou déposez-le sur la fenêtre ; une plage collée dans la grille des participants arrive ici. Rien ne s'importe avant l'aperçu.","Choisir un fichier CSV…","Contenu du fichier","Participants","Objectifs de table","Rapport d'import","13","personnes ajoutées","0","personne mise à jour","0","personne inchangée","0","personne retirée","0","réservation retirée","Fichier","participants_cas_limites.csv","Encodage","UTF-8 avec marque","Séparateur","point-virgule","Colonnes","En-tête","Devient","Nom","nom","Prénom","prénom","Organisation","appartenance","Courriel","courriel","Rôle","titre pressenti","Exclu","exclu","Notes","notes","Étiquettes","étiquettes","Téléphone","non reconnue : ignorée","13","lignes valides","Ligne","nom","prénom","appartenance","courriel","titre pressenti","exclu","notes","étiquettes","2","Lanterneau","Basile","Chœur de l’Anse","basile.lanterneau@exemple.test","animation","Finance","Montréal","3","Pommerel","Capucine","Société des Hérons","capucine.pommerel@exemple.test","bénévole","ressources humaines","4","Marbrelle","Gaspard","Cercle des Saules","animation","Finance","5","Sablonnet","Ysaline","Chœur de l’Anse","6","Givrecœur","Anselme","anselme.givrecoeur@exemple.test","7","Tourterel","Héloïse","Cercle des Saules","oui","S’est désistée la veille","8","Fenouillet","Côme","Société des Hérons","végétarien; sans noix, ni arachides","9","Coudraie","Apolline","Chœur de l’Anse","Arrive après le premier tour repart avant le dessert","10","Lanterneau","Basile","Chœur de l’Anse","11","Brunœil","Cercle des Saules","brunoeil@exemple.test","12","Ormelin","Faustine","Société des Hérons","14","Ardoisier","Edgar","Société des Hérons","15","Cressonnier","Bertille","Cercle des Saules","Refus","Lignes refusées","Ligne","Motif","13","Le nom manque.","Information","Orthographes fondues en une appartenance","affichée :","Société des Hérons","Société des Hérons","3","lignes","Societe des herons","1","ligne","Information","Orthographes fondues en une étiquette","retenue :","Finance","orthographes :","Finance",",","finance","—","1","ligne réécrite","Avis","Doublons signalés, jamais fusionnés","lignes","2","10","Enregistrer les lignes refusées","Fermer le rapport"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"2bd426f6ae2820694168b8af62ef8241d6d81e72859318e004ddbfb828d4ff18","etape":"3","etat":"c7c7f05d94c8fcfe6d779172d546d5c73cb2077e9d94ef1348542678c9383c6d","facteurEchelle":1,"fichier":"04-grille-participants","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"374cf28f7d60cb013b481367d079fd67511696aa5d1f42eb3929134144664b79"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":13.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","1 table · 8 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Il manque 4 places à chaque tour pour asseoir toutes les personnes : ajouter des tables ou des sièges, ou exclure des personnes, rend la génération possible.","Ouvrir les tables","Participants","13 personnes · 12 à placer · 1 exclue · 3 appartenances","Exporter la liste","Ajouter une personne","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Notes","Ajouter","Filtrer","Grouper par","Aucun groupement","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Statut","13 participants","Cercle des Saules · 4","Chœur de l’Anse · 4","Société des Hérons · 4","bénévole · 1","Finance · 2","Montréal · 1","ressources humaines · 1","Nom","(décroissant)","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Actions","Tourterel","Héloïse","Cercle des Saules","exclue","S’est désistée la veille","Fiche","Voir sur le plan","Réintégrer","Supprimer","Sablonnet","Ysaline","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Pommerel","Capucine","Société des Hérons","capucine.pommerel@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ormelin","Faustine","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Marbrelle","Gaspard","Cercle des Saules","ondine@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","basile.lanterneau@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Givrecœur","Anselme","anselme.givrecoeur@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Fenouillet","Côme","Société des Hérons","présente","végétarien; sans noix, ni arachides","Fiche","Voir sur le plan","Exclure","Supprimer","Cressonnier","Bertille","Cercle des Saules","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Coudraie","Apolline","Chœur de l’Anse","présente","Arrive après le premier tour repart avant le dessert","Fiche","Voir sur le plan","Exclure","Supprimer","Brunœil","Cercle des Saules","brunoeil@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ardoisier","Edgar","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer"],"theme":"clair","versionReelle":"2026.10.05.01"}, -{"cadre":{"hauteur":700,"largeur":1366},"empreinte":"f76f0fa068e802fcefb04ba014493d6749be4d527ac530a56985d298889a9868","etape":"3","etat":"dcbae0e085e28a315ba04e33f0c0bac0d9ca860235827a034a184eddad032f1c","facteurEchelle":1,"fichier":"04a-etiquettes","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"205a66717913e4e97c4917d22b2f8b782beb0a15741b50cdfa2e6b72bd29c2a8"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","1 table · 8 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","« FINANCE » est enregistrée sous l'orthographe que l'événement porte déjà : « Finance ».","Participants","13 personnes · 12 à placer · 1 exclue · 3 appartenances","Exporter la liste","Ajouter une personne","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Notes","Ajouter","Filtrer","Grouper par","Aucun groupement","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Statut","13 participants","Cercle des Saules · 4","Chœur de l’Anse · 4","Société des Hérons · 4","bénévole · 1","Finance · 3","Montréal · 1","ressources humaines · 1","Nom","(décroissant)","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Actions","Tourterel","Héloïse","Cercle des Saules","exclue","S’est désistée la veille","Fiche","Voir sur le plan","Réintégrer","Supprimer","Sablonnet","Ysaline","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Pommerel","Capucine","Société des Hérons","capucine.pommerel@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ormelin","Faustine","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Marbrelle","Gaspard","Cercle des Saules","ondine@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","basile.lanterneau@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Givrecœur","Anselme","anselme.givrecoeur@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Fenouillet","Côme","Société des Hérons","présente","végétarien; sans noix, ni arachides","Fiche","Voir sur le plan","Exclure","Supprimer","Cressonnier","Bertille","Cercle des Saules","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Coudraie","Apolline","Chœur de l’Anse","présente","Arrive après le premier tour repart avant le dessert","Fiche","Voir sur le plan","Exclure","Supprimer","Brunœil","Cercle des Saules","brunoeil@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ardoisier","Edgar","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Capucine Pommerel","Fermer la fiche","Nom","Pommerel","Prénom","Capucine","Appartenance","Société des Hérons","Courriel","capucine.pommerel@exemple.test","Titre pressenti","—","Notes","—","Statut","mobile","Étiquettes","Finance","Retirer « Finance »","bénévole","Retirer « bénévole »","ressources humaines","Retirer « ressources humaines »","Ajouter des étiquettes, séparées par une virgule","Ajouter","« FINANCE » est enregistrée sous l'orthographe que l'événement porte déjà : « Finance ».","Réservations","Aucune réservation.","Aucun placement retenu ne la nomme."],"theme":"clair","versionReelle":"2026.10.05.01"}, +{"cadre":{"hauteur":700,"largeur":1366},"empreinte":"4cc57ba3dc46cb364c04e755994f0cbc51b85c4937b6e01e2011d0560e2ec25b","etape":"3","etat":"dcbae0e085e28a315ba04e33f0c0bac0d9ca860235827a034a184eddad032f1c","facteurEchelle":1,"fichier":"04a-etiquettes","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"1458da2ac38bd2a9651525ca7eeb413e288d2a220a5febeb504ee28534729e24"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-retrait","ratio":5.62,"role":"marque","seuil":3}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5},{"jeton":"--couleur-retrait","ratio":5.96,"role":"marque","seuil":3}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","1 table · 8 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","« FINANCE » est enregistrée sous l'orthographe que l'événement porte déjà : « Finance ».","Participants","13 personnes · 12 à placer · 1 exclue · 3 appartenances","Exporter la liste","Ajouter une personne","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Notes","Ajouter","Filtrer","Grouper par","Aucun groupement","Nom","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Statut","13 participants","Cercle des Saules · 4","Chœur de l’Anse · 4","Société des Hérons · 4","bénévole · 1","Finance · 3","Montréal · 1","ressources humaines · 1","Nom","(décroissant)","Prénom","Appartenance","Courriel","Titre pressenti","Exclusion","Notes","Actions","Tourterel","Héloïse","Cercle des Saules","exclue","S’est désistée la veille","Fiche","Voir sur le plan","Réintégrer","Supprimer","Sablonnet","Ysaline","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Pommerel","Capucine","Société des Hérons","capucine.pommerel@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ormelin","Faustine","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Marbrelle","Gaspard","Cercle des Saules","ondine@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","basile.lanterneau@exemple.test","animation","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Lanterneau","Basile","Chœur de l’Anse","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Givrecœur","Anselme","anselme.givrecoeur@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Fenouillet","Côme","Société des Hérons","présente","végétarien; sans noix, ni arachides","Fiche","Voir sur le plan","Exclure","Supprimer","Cressonnier","Bertille","Cercle des Saules","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Coudraie","Apolline","Chœur de l’Anse","présente","Arrive après le premier tour repart avant le dessert","Fiche","Voir sur le plan","Exclure","Supprimer","Brunœil","Cercle des Saules","brunoeil@exemple.test","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Ardoisier","Edgar","Société des Hérons","présente","Fiche","Voir sur le plan","Exclure","Supprimer","Capucine Pommerel","Fermer la fiche","Nom","Pommerel","Prénom","Capucine","Appartenance","Société des Hérons","Courriel","capucine.pommerel@exemple.test","Titre pressenti","—","Notes","—","Statut","mobile","Étiquettes","Finance","bénévole","ressources humaines","Ajouter des étiquettes, séparées par une virgule","Ajouter","« FINANCE » est enregistrée sous l'orthographe que l'événement porte déjà : « Finance ».","Réservations","Aucune réservation.","Aucun placement retenu ne la nomme."],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"68a9cd24e436c634c0b1eaa36cac48b353489149f23eabe85771d6df3c0ffbb3","etape":"4","etat":"9066550bdb9c9829148a7a50e177a784cd907a0ad7c8b18460a8c911589c71d8","facteurEchelle":1,"fichier":"05-tables-etat","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"b5e53613327467ae7600cdb222ac18078ece3d70f01f189973cba1fa385693a0"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.1,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 16 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Tables et tours","Places par défaut","Nombre de tours","Règle par défaut des objectifs","au moins une (OU)","toutes (ET)","Tables","2 tables · 16 sièges","Ajouter une table ronde","Ajouter une table carrée","Exporter les objectifs","Table","1","Ronde","Suit le défaut","Places","Supprimer","Objectif de la soirée","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Objectifs par tour","Table","2","Ronde","Surchargée","Places","Réaligner","Supprimer","Objectif de la soirée","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Objectifs par tour"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"9bc27323c549026db9d7d4f8b45518bd265146e236b38b32f8f08120c2f38d9f","etape":"4","etat":"aec49e481eef9af563b3ed2e8772b1f03cb81ccc36d1633a6591fb8da44017de","facteurEchelle":1,"fichier":"05a-objectifs-tables","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"020580868339aff7d7df7eed96e81dd5ff33d0b45c3db9ab4edc485b026b09d6"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.1,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 16 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Aucune personne présente ne correspond à l'objectif au tour 1 : la table ne servira personne à ce titre.","Tables et tours","Places par défaut","Nombre de tours","Règle par défaut des objectifs","au moins une (OU)","toutes (ET)","Tables","2 tables · 16 sièges","Ajouter une table ronde","Ajouter une table carrée","Exporter les objectifs","Table","1","Ronde","Suit le défaut","Places","Supprimer","Objectif de la soirée","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Suit la règle par défaut","Retirer l'objectif","Objectifs par tour","Table","2","Ronde","Surchargée","Places","Réaligner","Supprimer","Objectif de la soirée","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Objectifs par tour (1)","Objectif du tour 1","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Règle propre","Retirer l'objectif","Aucune personne présente ne correspond à l'objectif au tour 1 : la table ne servira personne à ce titre.","Objectif du tour 2","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Objectif du tour 3","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)","Objectif du tour 4","Règle de l'objectif","selon le réglage général (au moins une)","au moins une (OU)","toutes (ET)"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"b95dd5be1eebff8135cb65f4ebbb40fb235dfdc69cf1f656955b9556932f4121","etape":"4","etat":"aec49e481eef9af563b3ed2e8772b1f03cb81ccc36d1633a6591fb8da44017de","facteurEchelle":1,"fichier":"05b-import-objectifs","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"ee69807c700d5ec6cd211f8fc299290a0f35ca98964d68668a20d0cffbe6f724"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-avis","ratio":6.58,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.1,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-avis","ratio":8.93,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 16 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Aucune personne présente ne correspond à l'objectif au tour 1 : la table ne servira personne à ce titre.","Import","Choisissez un fichier CSV ou déposez-le sur la fenêtre ; une plage collée dans la grille des participants arrive ici. Rien ne s'importe avant l'aperçu.","Choisir un fichier CSV…","Contenu du fichier","Participants","Objectifs de table","Aperçu","Mode de l'import","Mettre à jour","Remplacer","Fichier","objectifs_cas_limites.csv","Encodage","UTF-8 avec marque","Séparateur","point-virgule","Colonnes","En-tête","Devient","Table","table","Tour","tour","Objectif","objectif","Règle","règle","3","lignes valides","Ligne","table","tour","objectif","règle","2","1","soirée","Finance","bénévole","règle par défaut","3","1","2","Montréal","toutes","4","2","soirée","Finance","au moins une","Refus","Lignes refusées","Ligne","Motif","5","Aucune table ne porte le numéro 9.","6","La soirée compte 4 tours : le tour 9 n'en est pas un.","7","La règle « peut-être » n'est pas reconnue : ou, une, au moins une ; et, toutes ; vide pour suivre la règle par défaut.","8","La ligne 3 donne déjà l'objectif de la table 1 au tour 2 : rien n'est fusionné.","Information","Orthographes fondues en une étiquette","retenue :","Finance","orthographes :","FINANCE",",","Finance",",","finance","—","2","lignes réécrites","Importer","Enregistrer les lignes refusées","Fermer l'aperçu"],"theme":"clair","versionReelle":"2026.10.05.01"}, @@ -17,7 +17,7 @@ {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"a4d55a7a4ff633fddbc816170e1c6497c75ad91e7639d7019d51ace6608c1670","etape":"6","etat":"0229d0d8208ef262e3b3485bc2f606cad900fe487d038276d3733a5423cb6a5b","facteurEchelle":1,"fichier":"08-animateurs-designes","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"8631b3356260b7d77c13b40e2d73b0847454600b3471baabe4de5ceb1fceadf1"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":15.09,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.82,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":16.48,"role":"marque","seuil":3},{"jeton":"--couleur-liste-texte","ratio":14.82,"role":"texte","seuil":4.5},{"jeton":"--couleur-marque","ratio":3.63,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":13.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-selection","ratio":4.57,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":7.44,"role":"marque","seuil":3}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":14.94,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":8.89,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.62,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":15.21,"role":"marque","seuil":3},{"jeton":"--couleur-marque","ratio":3.5,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":11.32,"role":"marque","seuil":3},{"jeton":"--couleur-selection","ratio":4.18,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":5.59,"role":"marque","seuil":3}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Plan","Réservations","Tour affiché","1","2","3","Zoom +","Zoom −","Ajuster","Listes de noms","Légende","Plein écran","1. (réservée, tous les tours)","Basile Lanterneau","—","animation","2. (libre)","3. (libre)","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","9. (libre)","10. (libre)","1. (libre)","— titre","animation","non pourvu","2. (réservée, tour 1)","Capucine Pommerel","3. (libre)","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","1","m","disposition relative — l'encombrement dans la salle n'est pas vérifié","Diagnostic","Chœur de l’Anse","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Société des Hérons","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Cercle des Saules","3 personnes : au moins 3 collisions cumulées sur les 3 tours, portées par au moins 1 paire distincte","Tout l'événement","au moins 8 appartenances recroisées par personne","plafond a priori 11 rencontres pour 1 ancré et 11 mobiles","2 retours imposés par 1 ancrage","Listes de travail","Titres de place non pourvus","table 2 : titre","animation","non pourvu","Titres pressentis sans réservation","Gaspard Marbrelle","— titre pressenti","animation","Réserve","Personnes en attente au tour 1","Gaspard Marbrelle","Ysaline Sablonnet","Anselme Givrecœur","Côme Fenouillet","Apolline Coudraie","Basile Lanterneau","Brunœil","Faustine Ormelin","Edgar Ardoisier","Bertille Cressonnier","Table 2, siège 1","1. (libre)","— titre","animation","non pourvu","Choisissez d'abord une personne : dans la réserve, dans la liste des pressentis, ou par « Déplacer » dans son menu.","Portée","Tour 1","Tous les tours","Libellé du titre","Assigner","Réserver","Désigner","Retirer le titre"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"127826d1d2ae53997f9d467736f45d0e9ab663730f23ba53271fc87ce1f7fe73","etape":"7","etat":"0229d0d8208ef262e3b3485bc2f606cad900fe487d038276d3733a5423cb6a5b","facteurEchelle":1,"fichier":"09-refus-sur-place","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"db6e14d4a0a151e4440a515f0638de0e62676e2049b59f44672815283aa47b4e"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":15.09,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.82,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":16.48,"role":"marque","seuil":3},{"jeton":"--couleur-liste-texte","ratio":14.82,"role":"texte","seuil":4.5},{"jeton":"--couleur-marque","ratio":3.63,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":13.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-refus","ratio":8.34,"role":"texte","seuil":4.5},{"jeton":"--couleur-selection","ratio":4.57,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":7.44,"role":"marque","seuil":3}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":14.94,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":8.89,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.62,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":15.21,"role":"marque","seuil":3},{"jeton":"--couleur-marque","ratio":3.5,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":11.32,"role":"marque","seuil":3},{"jeton":"--couleur-refus","ratio":8.14,"role":"texte","seuil":4.5},{"jeton":"--couleur-selection","ratio":4.18,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":5.59,"role":"marque","seuil":3}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Plan","Réservations","Tour affiché","1","2","3","Zoom +","Zoom −","Ajuster","Listes de noms","Légende","Plein écran","1. (réservée, tous les tours)","Basile Lanterneau","—","animation","2. (libre)","3. (libre)","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","9. (libre)","10. (libre)","1. (libre)","— titre","animation","non pourvu","2. (réservée, tour 1)","Capucine Pommerel","3. (libre)","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","Table 1, siège 1","Le siège 1 est réservé à une autre personne à tous les tours : déplacer sa réservation libère la place.","Choisir une place","Fermer","1","m","disposition relative — l'encombrement dans la salle n'est pas vérifié","Diagnostic","Chœur de l’Anse","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Société des Hérons","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Cercle des Saules","3 personnes : au moins 3 collisions cumulées sur les 3 tours, portées par au moins 1 paire distincte","Tout l'événement","au moins 8 appartenances recroisées par personne","plafond a priori 11 rencontres pour 1 ancré et 11 mobiles","2 retours imposés par 1 ancrage","Listes de travail","Titres de place non pourvus","table 2 : titre","animation","non pourvu","Titres pressentis sans réservation","Gaspard Marbrelle","— titre pressenti","animation","Réserve","Personnes en attente au tour 1","Gaspard Marbrelle","Ysaline Sablonnet","Anselme Givrecœur","Côme Fenouillet","Apolline Coudraie","Basile Lanterneau","Brunœil","Faustine Ormelin","Edgar Ardoisier","Bertille Cressonnier","Table 1, siège 1","1. (réservée, tous les tours)","Basile Lanterneau","—","animation","Personne choisie :","Gaspard Marbrelle","Assigner","Retirer la réservation","Retirer le titre","Oublier le choix","Menu de","Basile Lanterneau","Déplacer","Échanger","Retirer du tour","Déplacer sa réservation","Exclure","Mettre en évidence","Ouvrir la fiche"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"c35f4720e6dac6dc98262aba6615905ba8f6ab28d6c897551cdf07ed5c473d2c","etape":"8","etat":"4d37d30748068354162752743c26aa7e0ab00d6e9b2aa1996b6f9fb410848280","facteurEchelle":1,"fichier":"10-diagnostic","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"6d9e4c48b101c40a4ef97fef2dc2241ab37bf5106aa362255b1d3357aecaef3d"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":13.78,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Lecture","Liste des événements","Clair","Sombre","À propos","Lecture","Rien ne change ; « Modifier » passe en écriture.","Modifier","Lecture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Grande démonstration 1","260 participants","33 tables · 260 sièges","4 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Diagnostic","Tout l'événement","écart d'itinéraire maximal : plancher 1, au moins 24 mobiles finissent sous leur plafond a priori","aucune relance ne le réduit : il tient aux tables pleines dont les capacités ou les ancrages diffèrent","plafond a priori 24 rencontres pour 4 ancrés","seules les capacités et les réservations le changent : aucune relance ne le dépasse","plafond a priori 28 rencontres pour 29 ancrés et 227 mobiles","seules les capacités et les réservations le changent : aucune relance ne le dépasse","99 retours imposés par 33 ancrages","les réservations les imposent : ils ne comptent pas parmi les retours que choisit le moteur"],"theme":"clair","versionReelle":"2026.10.05.01"}, -{"cadre":{"hauteur":700,"largeur":1366},"empreinte":"16eaaf9da585d8305ecb5975ddbb4b6f97ee2800ba9680389b55a1438c941efe","etape":"9","etat":"1025fe8c346e3a503f00abcaf78cf004f33fe2c01a46bebd87da1bbf4d0b3f53","facteurEchelle":1,"fichier":"10a-ordre-priorites","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"097cbf2794eb21f94d10ca51df746ab4008a5bf17cba7aff2b4184670e70c7b6"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Génération","Meilleure proposition du classement","Aucune proposition classée : sans proposition comparable, le classement n'en désigne aucune.","Réglages de la génération","Graine (nombre entier, de 0 à 4 294 967 295)","Propositions par génération (nombre de propositions)","Compte d'arrêt (mouvements évalués par proposition)","Historique d'acceptation (longueur, en mouvements)","Contraintes de la génération","Séparer les appartenances","Nouveaux voisins à chaque tour","Nouvelle table à chaque tour","Varier les appartenances rencontrées","Respecter les objectifs des tables","Objectifs des tables : chercher d'abord","le plus de places servies","Le plus grand total de tours servis : le critère compare les tours hors objectif.","chacun au moins une fois","D'abord le plus de personnes servies à un tour au moins, puis le plus grand total : le critère compare les personnes jamais servies, puis les tours hors objectif.","l'équité d'abord","Le minimum d'abord, puis le total : d'abord la personne la plus mal servie, mesurée contre ses propres tours possibles, puis le plus grand total. Le critère compare le plus de tours hors objectif d'une personne, puis les tours hors objectif.","Rencontrer le plus d'animateurs différents","Attribuer les sièges","Ordre des priorités","Deux propositions se comparent palier par palier : un palier ne départage que des propositions égales sur ceux qui le précèdent. Dans un palier de plusieurs critères, chacun compte selon son poids.","Ordre réglé pour l'événement.","Palier 1 sur 6","écart au plafond a priori","Descendre « écart au plafond a priori » d'un palier","Palier 2 sur 6","excédent de collisions","Poids de « excédent de collisions » (nombre entier)","Monter le palier de « excédent de collisions »","Descendre le palier de « excédent de collisions »","Séparer « excédent de collisions » en palier propre","tours hors objectif","Poids de « tours hors objectif » (nombre entier)","Monter le palier de « tours hors objectif »","Descendre le palier de « tours hors objectif »","Séparer « tours hors objectif » en palier propre","Palier 3 sur 6","collisions cumulées","Monter « collisions cumulées » d'un palier","Descendre « collisions cumulées » d'un palier","Joindre « collisions cumulées » au palier du dessus","Palier 4 sur 6","rencontres répétées et retours","Monter « rencontres répétées et retours » d'un palier","Descendre « rencontres répétées et retours » d'un palier","Palier 5 sur 6","animateurs non rencontrés","décoché","Monter « animateurs non rencontrés » d'un palier","Descendre « animateurs non rencontrés » d'un palier","Palier 6 sur 6","redondance d'appartenance","Monter « redondance d'appartenance » d'un palier","Joindre « redondance d'appartenance » au palier du dessus","« tours hors objectif » est au palier 2 sur 6, avec « excédent de collisions ».","Rétablir l'ordre par défaut","Cœurs de calcul","Cœurs automatiques (un par processeur logique du poste)","Valeur automatique sur ce poste : 4 cœurs, un par processeur logique, hyperthreads compris.","Une génération n'emploie jamais plus de cœurs que de propositions demandées. Ce réglage vaut pour cette séance du logiciel sur ce poste : il ne s'enregistre pas dans l'événement.","Aucun calcul n'est encore mesuré sur ce poste pendant cette séance : la durée d'une génération est inconnue.","Générer"],"theme":"clair","versionReelle":"2026.10.05.01"}, +{"cadre":{"hauteur":700,"largeur":1366},"empreinte":"16eaaf9da585d8305ecb5975ddbb4b6f97ee2800ba9680389b55a1438c941efe","etape":"9","etat":"1025fe8c346e3a503f00abcaf78cf004f33fe2c01a46bebd87da1bbf4d0b3f53","facteurEchelle":1,"fichier":"10a-ordre-priorites","graine":null,"image":{"hauteur":700,"largeur":1366,"sha256":"9d19aae397b3509ebdada1f8ff40f1a1d56f53e3c5bc50c63e358fc68ce5b194"},"instant":"2026-10-06T19:00:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.16,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.07,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Génération","Meilleure proposition du classement","Aucune proposition classée : sans proposition comparable, le classement n'en désigne aucune.","Réglages de la génération","Graine (nombre entier, de 0 à 4 294 967 295)","Propositions par génération (nombre de propositions)","Compte d'arrêt (mouvements évalués par proposition)","Historique d'acceptation (longueur, en mouvements)","Contraintes de la génération","Séparer les appartenances","Nouveaux voisins à chaque tour","Nouvelle table à chaque tour","Varier les appartenances rencontrées","Respecter les objectifs des tables","Objectifs des tables : chercher d'abord","le plus de places servies","Le plus grand total de tours servis : le critère compare les tours hors objectif.","chacun au moins une fois","D'abord le plus de personnes servies à un tour au moins, puis le plus grand total : le critère compare les personnes jamais servies, puis les tours hors objectif.","l'équité d'abord","Le minimum d'abord, puis le total : d'abord la personne la plus mal servie, mesurée contre ses propres tours possibles, puis le plus grand total. Le critère compare le plus de tours hors objectif d'une personne, puis les tours hors objectif.","Rencontrer le plus d'animateurs différents","Attribuer les sièges","Ordre des priorités","Deux propositions se comparent palier par palier : un palier ne départage que des propositions égales sur ceux qui le précèdent. Dans un palier de plusieurs critères, chacun compte selon son poids.","Ordre réglé pour l'événement.","Palier 1 sur 6","écart au plafond a priori","Descendre « écart au plafond a priori » d'un palier","Palier 2 sur 6","excédent de collisions","Poids de « excédent de collisions » (nombre entier)","Monter le palier de « excédent de collisions »","Descendre le palier de « excédent de collisions »","Séparer « excédent de collisions » en palier propre","tours hors objectif","Poids de « tours hors objectif » (nombre entier)","Monter le palier de « tours hors objectif »","Descendre le palier de « tours hors objectif »","Séparer « tours hors objectif » en palier propre","Palier 3 sur 6","collisions cumulées","Monter « collisions cumulées » d'un palier","Descendre « collisions cumulées » d'un palier","Joindre « collisions cumulées » au palier du dessus","Palier 4 sur 6","rencontres répétées et retours","Monter « rencontres répétées et retours » d'un palier","Descendre « rencontres répétées et retours » d'un palier","Palier 5 sur 6","animateurs non rencontrés","décoché","Monter « animateurs non rencontrés » d'un palier","Descendre « animateurs non rencontrés » d'un palier","Palier 6 sur 6","redondance d'appartenance","Monter « redondance d'appartenance » d'un palier","Joindre « redondance d'appartenance » au palier du dessus","« tours hors objectif » est au palier 2 sur 6, avec « excédent de collisions ».","Rétablir l'ordre par défaut","Cœurs de calcul","Cœurs automatiques (un par processeur logique du poste)","Valeur automatique sur ce poste : 4 cœurs, un par processeur logique, hyperthreads compris.","Une génération n'emploie jamais plus de cœurs que de propositions demandées. Ce réglage vaut pour cette séance du logiciel sur ce poste : il ne s'enregistre pas dans l'événement.","Aucun calcul n'est encore mesuré sur ce poste pendant cette séance : la durée d'une génération est inconnue.","Générer"],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"df0e5d4dbc1191c7b5ae715c276a366d61b185c4f724009fc508d3c499b06c8a","etape":"9","etat":"b42451443701c80d433d632788edaab7dd1afea7a57add55a37fcedfdaee98ff","facteurEchelle":1,"fichier":"11-propositions","graine":4242,"image":{"hauteur":700,"largeur":1366,"sha256":"047dedcd90dd84347dc8637bccde6d56f8fbd990bdfc6c74eb8e3b3a5e08065f"},"instant":"2026-10-06T19:02:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":14.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte","ratio":11.02,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Propositions","Propositions classées","Effacer les propositions","Ordre du classement, chaque critère au plus faible d'abord :","écart au plafond a priori",", puis","ensemble,","excédent de collisions","(poids 1)",",","tours hors objectif","(poids 3)",", puis","collisions cumulées",", puis","rencontres répétées",", puis","redondance d'appartenance",", puis","l'identifiant croissant",".","Personnes rencontrées","Collisions d'appartenance","Rencontres répétées et retours","Diversité d'appartenance","Manque et plafond a priori","Objectifs des tables et animateurs","Rang","Proposition","Personnes distinctes rencontrées, minimum : tous","Personnes distinctes rencontrées, minimum : mobiles","Personnes distinctes rencontrées, minimum : ancrés","Collisions cumulées (paire et tour)","Paires distinctes de même appartenance","Excédent de collisions (retrouvailles au-delà de la première)","Rencontres répétées choisies (paires)","Rencontres d'une même paire, au plus","Retours choisis à une table déjà occupée","Appartenances rencontrées A(p), minimum","Redondance d'appartenance, somme Σ r(p)","Taux de diversité d(p), minimum","Plus grand manque (personnes)","Personnes à qui il en manque","Écart d'itinéraire maximal (personnes)","Écart au plafond a priori maximal (personnes)","Tours hors objectif (personne et tour)","Tours selon l'objectif s(p), minimum","Certificat","Imposé par les réservations","Commandes","Placement retenu","3","Tel que la proposition n° 3.","11","11","11","26","15","11","30","3","11","3","85","0,27","0","0","0","0","1","1","minimum atteint","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","1","3","retenue","11","11","11","26","15","11","30","3","11","3","85","0,27","0","0","0","0","1","1","minimum atteint","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","Retenir","2","2","11","11","11","33","15","18","54","3","16","3","85","0,27","0","0","0","0","2","1","minimum atteint","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","Retenir","3","5","10","10","10","20","15","5","22","3","12","3","83","0,27","1","1","1","1","1","1","atteignabilité inconnue","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","Retenir","4","1","10","10","11","29","15","14","46","3","13","3","82","0,30","1","4","0","1","0","2","atteignabilité inconnue","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","Retenir","5","4","10","10","11","31","14","17","46","3","17","3","82","0,30","1","4","0","1","0","2","atteignabilité inconnue","2 retours imposés par 1 ancrage.","Aucune rencontre répétée imposée.","Voir sur le plan","Retenir","Cible de la somme de redondance","La liste des événements montre, pour le placement retenu, la différence sans signe entre cette cible et la somme Σ r(p) de la colonne « Redondance d'appartenance ». Un nombre entier, 0 ou plus."],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"bcf0f6b2bd8f8f5118ba7afeaf82157ab445f462cac9177c9746b2da9638955f","etape":"11","etat":"b42451443701c80d433d632788edaab7dd1afea7a57add55a37fcedfdaee98ff","facteurEchelle":1,"fichier":"19-ajustement","graine":4242,"image":{"hauteur":700,"largeur":1366,"sha256":"628d4679190e73a8c50590eb755d688902318b43b2ee14c2aab0ec2ece724877"},"instant":"2026-10-06T19:02:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":15.09,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.82,"role":"marque","seuil":3},{"jeton":"--couleur-fantome","ratio":4.34,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":16.48,"role":"marque","seuil":3},{"jeton":"--couleur-liste-texte","ratio":14.82,"role":"texte","seuil":4.5},{"jeton":"--couleur-marque","ratio":3.63,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":13.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-pastille-fond","ratio":13.44,"role":"marque","seuil":3},{"jeton":"--couleur-poignee","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":7.44,"role":"marque","seuil":3}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":14.94,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":8.89,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.62,"role":"marque","seuil":3},{"jeton":"--couleur-fantome","ratio":4.1,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":15.21,"role":"marque","seuil":3},{"jeton":"--couleur-marque","ratio":3.5,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":11.02,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5},{"jeton":"--couleur-pastille-fond","ratio":11.62,"role":"marque","seuil":3},{"jeton":"--couleur-pastille-texte","ratio":14.51,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":11.32,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":5.59,"role":"marque","seuil":3}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Écriture","Liste des événements","Clair","Sombre","À propos","Écriture","Chaque geste s’enregistre aussitôt ; « Revenir en lecture » arrête l’écriture.","Revenir en lecture","Écriture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Plan","Placement retenu","Tour affiché","1","2","3","Zoom +","Zoom −","Ajuster","Listes de noms","Légende","Plein écran","9","1. (réservée, tous les tours)","Basile Lanterneau","—","animation","2.","Gaspard Marbrelle","3.","Ysaline Sablonnet","4.","Anselme Givrecœur","5.","Côme Fenouillet","6.","Apolline Coudraie","7.","Brunœil","8.","Faustine Ormelin","9.","Edgar Ardoisier","10.","Bertille Cressonnier","1.","Basile Lanterneau","— titre","animation","non pourvu","2. (réservée, tour 1)","Capucine Pommerel","3. (libre)","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","Gaspard Marbrelle","déplace dans le placement retenu","1","m","disposition relative — l'encombrement dans la salle n'est pas vérifié","Diagnostic","Chœur de l’Anse","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Société des Hérons","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Cercle des Saules","3 personnes : au moins 3 collisions cumulées sur les 3 tours, portées par au moins 1 paire distincte","Tout l'événement","au moins 8 appartenances recroisées par personne","plafond a priori 11 rencontres pour 1 ancré et 11 mobiles","2 retours imposés par 1 ancrage","Listes de travail","Titres de place non pourvus","table 2 : titre","animation","non pourvu","Titres pressentis sans réservation","Gaspard Marbrelle","— titre pressenti","animation","Réserve","Personnes en attente au tour 1","Personne en attente à ce tour."],"theme":"clair","versionReelle":"2026.10.05.01"}, {"cadre":{"hauteur":700,"largeur":1366},"empreinte":"1ba00a6086f6d2f1b695469f1a26ec19092805835305fd30c07310a1911992d0","etape":"11","etat":"e60a6d4dbb76287b287857b2175d4a784996dcdb3cf6df8e8e30cc9d4d01c14d","facteurEchelle":1,"fichier":"20-mode-lecture","graine":4242,"image":{"hauteur":700,"largeur":1366,"sha256":"4f4cad699bed04e20bd932ff8f11dada090e01de4389928914d415b555e097df"},"instant":"2026-10-06T19:02:00-04:00","mode":"chromium-headless-shell","pdf":null,"source":"navigateur","styles":{"clair":[{"jeton":"--couleur-bandeau-fond","ratio":15.94,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":6.09,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":9.05,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":15.09,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-conflit-appartenance","ratio":8.92,"role":"marque","seuil":3},{"jeton":"--couleur-contour-fort","ratio":12.3,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.82,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":16.48,"role":"marque","seuil":3},{"jeton":"--couleur-liste-texte","ratio":14.82,"role":"texte","seuil":4.5},{"jeton":"--couleur-marque","ratio":3.63,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":13.78,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":5.81,"role":"texte","seuil":4.5},{"jeton":"--couleur-pastille-fond","ratio":13.44,"role":"marque","seuil":3},{"jeton":"--couleur-poignee","ratio":7.44,"role":"marque","seuil":3},{"jeton":"--couleur-refus","ratio":8.34,"role":"texte","seuil":4.5},{"jeton":"--couleur-selection","ratio":4.57,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":7.44,"role":"marque","seuil":3}],"sombre":[{"jeton":"--couleur-action-texte","ratio":8.45,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-fond","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte","ratio":12.84,"role":"texte","seuil":4.5},{"jeton":"--couleur-bandeau-texte-secondaire","ratio":7.6,"role":"texte","seuil":4.5},{"jeton":"--couleur-chaise-pleine","ratio":14.94,"role":"marque","seuil":3},{"jeton":"--couleur-chaise-trait","ratio":8.89,"role":"marque","seuil":3},{"jeton":"--couleur-conflit-appartenance","ratio":6.81,"role":"marque","seuil":3},{"jeton":"--couleur-contour-fort","ratio":11.62,"role":"marque","seuil":3},{"jeton":"--couleur-echelle","ratio":14.62,"role":"marque","seuil":3},{"jeton":"--couleur-hachure","ratio":15.21,"role":"marque","seuil":3},{"jeton":"--couleur-marque","ratio":3.5,"role":"marque","seuil":3},{"jeton":"--couleur-page-texte","ratio":11.02,"role":"texte","seuil":4.5},{"jeton":"--couleur-page-texte-secondaire","ratio":6.72,"role":"texte","seuil":4.5},{"jeton":"--couleur-pastille-fond","ratio":11.62,"role":"marque","seuil":3},{"jeton":"--couleur-pastille-texte","ratio":14.51,"role":"texte","seuil":4.5},{"jeton":"--couleur-poignee","ratio":11.32,"role":"marque","seuil":3},{"jeton":"--couleur-refus","ratio":8.14,"role":"texte","seuil":4.5},{"jeton":"--couleur-selection","ratio":4.18,"role":"marque","seuil":3},{"jeton":"--couleur-table-trait","ratio":5.59,"role":"marque","seuil":3}]},"texte":["Gestion table tournante Libre","construction de documentation","documentation","Lecture","Liste des événements","Clair","Sombre","À propos","Lecture","Rien ne change ; « Modifier » passe en écriture.","Modifier","Lecture","Défaire","État du plan","Brouillon","Proposé","Retenu","Bloqué","Imprimer…","Soirée d’essai","13 participants","2 tables · 18 sièges","3 tours","Préparer","Import","Participants","Tables et tours","Placer","Plan","Diagnostic","Génération","Propositions","Produire","Badges","Plan","Placement retenu","Tour affiché","1","2","3","Zoom +","Zoom −","Ajuster","Listes de noms","Légende","Plein écran","7","1. (réservée, tous les tours)","Basile Lanterneau","—","animation","2.","Ysaline Sablonnet","3.","Anselme Givrecœur","4.","Côme Fenouillet","5.","Apolline Coudraie","6.","Brunœil","7.","Faustine Ormelin","8.","Edgar Ardoisier","9.","Bertille Cressonnier","10. (libre)","1.","Gaspard Marbrelle","— titre","animation","non pourvu","2. (réservée, tour 1)","Capucine Pommerel","3.","Basile Lanterneau","4. (libre)","5. (libre)","6. (libre)","7. (libre)","8. (libre)","Table 2, siège 4","L'événement est ouvert en lecture : « Modifier » permet de le changer.","Modifier","Fermer","1","m","disposition relative — l'encombrement dans la salle n'est pas vérifié","Diagnostic","Chœur de l’Anse","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Société des Hérons","4 personnes : au moins 6 collisions cumulées sur les 3 tours, portées par au moins 2 paires distinctes","Cercle des Saules","3 personnes : au moins 3 collisions cumulées sur les 3 tours, portées par au moins 1 paire distincte","Tout l'événement","au moins 8 appartenances recroisées par personne","plafond a priori 11 rencontres pour 1 ancré et 11 mobiles","2 retours imposés par 1 ancrage","Listes de travail","Titres de place non pourvus","table 2 : titre","animation","non pourvu","Titres pressentis sans réservation","Gaspard Marbrelle","— titre pressenti","animation","Réserve","Personnes en attente au tour 1","Personne en attente à ce tour.","Table 2, siège 4","4. (libre)","Choisissez d'abord une personne : dans la réserve, dans la liste des pressentis, ou par « Déplacer » dans son menu.","Portée","Tour 1","Tous les tours","Libellé du titre","Assigner","Réserver","Donner un titre","Désigner"],"theme":"clair","versionReelle":"2026.10.05.01"}, diff --git a/spec.md b/spec.md index b49f925..a2c1f84 100644 --- a/spec.md +++ b/spec.md @@ -2751,9 +2751,10 @@ l'appartenance s'affiche en pastille de sa teinte (§ 12.7), le titre pressenti et l'exclusion en pastilles à icône. La fiche d'une personne porte ses étiquettes, en pastilles **neutres** — la -teinte d'appartenance ne sert qu'à l'appartenance (§ 12.7) —, chacune avec sa -commande « Retirer », et un champ qui en ajoute une ou plusieurs, séparées comme -dans une cellule CSV ; la saisie passe par la même lecture que l'import (§ 4.5, +teinte d'appartenance ne sert qu'à l'appartenance (§ 12.7) —, chacune suivie, +en mode écriture seulement, d'une petite croix cerclée rouge qui la retire, +nommée « Retirer « étiquette » » pour les technologies d'assistance, et un +champ qui en ajoute une ou plusieurs, séparées comme dans une cellule CSV ; la saisie passe par la même lecture que l'import (§ 4.5, § 10.1). Quand l'événement porte des étiquettes, une légende des étiquettes suit celle des appartenances, chacune avec le nombre de personnes qui la portent, exclues comprises. @@ -3622,6 +3623,9 @@ Une page de statistiques se casse par ses bords, et chacun se produira. le plan de salle, et ne servent à rien d'autre ; chacune ne peint que les marques de sa règle. Elles se distinguent entre elles et des autres marques du plan **une fois les trois dichromaties simulées**. +- **Le rouge du retrait** (`--couleur-retrait`) ne peint que la croix cerclée + d'une commande qui retire, sur une carte, jamais sur le plan : c'est le seul + jeton chromatique admis à moins de 30° d'une teinte de conflit. - **Les couleurs d'appartenance ne vont que sur les listes**, jamais sur le plan, dont le canal chromatique appartient aux conflits : au plus six teintes catégorielles, chacune à 30° au moins des teintes de conflit dans chaque @@ -4023,7 +4027,7 @@ des fonctions pures du module de géométrie. | tenir hors ligne | se compile en JavaScript ordinaire ; Vite est une dépendance de développement qui ne survit pas à la construction | | rester rapide | compile des mises à jour fines, sans arbre virtuel ni mémoïsation à poser à la main — à une exception près : la table d'évaluation des propositions, gardée dans le modèle pur sous l'identité de la charge figée de la séance, qu'une écriture remplace | | se tester sans navigateur | n'impose d'écrire aucun calcul dans un composant ; le composant ne contient que le câblage | -| être joli sans y passer des semaines | un fichier de jetons — couleurs, rayons, ombres, échelle typographique, cible principale, largeur de page — décliné en deux thèmes ; ses familles de couleur : la page, le bandeau, la carte, l'action principale, les quatre états du plan, le neutre, les appartenances, la bande de mode, les messages (avis, refus, information), le plan, le papier | +| être joli sans y passer des semaines | un fichier de jetons — couleurs, rayons, ombres, échelle typographique, cible principale, largeur de page — décliné en deux thèmes ; ses familles de couleur : la page, le bandeau, la carte, l'action principale, les quatre états du plan, le neutre, les appartenances, la bande de mode, les messages (avis, refus, information), le retrait, le plan, le papier | **Les candidates écartées.** Vue 3 est le second choix défendable, écarté de peu sur le poids et sur la discipline qu'exige sa réactivité. React est écarté sur la @@ -4243,7 +4247,8 @@ l'étage intermédiaire et laisse partir les défauts de coordonnées. ### 14.5 Accessibilité et thèmes Le texte tient **4,5:1** de contraste, les marques porteuses d'information -**3:1**. Chaque couleur est accompagnée du ratio **mesuré sur la couleur relue du +**3:1**. Une commande sans texte, à icône seule, offre une cible de 24 × 24 px +au moins et porte son libellé en nom accessible. Chaque couleur est accompagnée du ratio **mesuré sur la couleur relue du rendu**, non sur le jeton source. Les deux thèmes sont éprouvés **par rendu**, jamais seulement par calcul, et le tableau des ratios est **engendré pour les deux** à partir des styles relevés au pilotage (§ 19.5), jamais recopié. Le diff --git a/src/application/commandes_mobilier.js b/src/application/commandes_mobilier.js index 8f32d96..83e67da 100644 --- a/src/application/commandes_mobilier.js +++ b/src/application/commandes_mobilier.js @@ -543,6 +543,10 @@ function lirePaliers(paliers) { }); } +/** Le plus grand poids d'un critère (§ 5.7), celui du moteur : l'écran en + * borne le champ du poids, que changerPriorites contrôle. */ +export { POIDS_MAX }; + // Vrai pour un poids du domaine : un entier de 1 à POIDS_MAX (§ 5.7). const poidsAdmis = (poids) => Number.isInteger(poids) && poids >= 1 && poids <= POIDS_MAX; diff --git a/src/interface/generation/Priorites.svelte b/src/interface/generation/Priorites.svelte index ef0ca31..fc8db21 100644 --- a/src/interface/generation/Priorites.svelte +++ b/src/interface/generation/Priorites.svelte @@ -30,11 +30,14 @@ // contre la liste, avec son remède, et décrit le groupe de l'éditeur // (aria-describedby), focalisable par programme (tabindex -1) : après le // remède, le focus revient au groupe ; rien ne s'écrit. Le poids d'un - // critère d'un palier partagé se saisit dans un Champ entier (poids.), - // écrit à la sortie du champ par changerPriorites ; son refus, un poids - // hors de son domaine compris, se pose contre le champ. + // critère d'un palier partagé se saisit dans un Champ nombre, étroit, de + // 1 à POIDS_MAX par pas de 1 (poids.), lu par lireEntier et écrit à + // la sortie du champ par changerPriorites ; son refus, un poids hors de + // son domaine compris, se pose contre le champ : les bornes de l'entrée + // guident ses flèches et ne refusent rien. import { getContext, tick } from 'svelte'; import { lireEntier } from '../../application/capacite.js'; + import { POIDS_MAX } from '../../application/commandes_mobilier.js'; import Champ from '../primitives/Champ.svelte'; import Commande from '../primitives/Commande.svelte'; import Refus from '../primitives/Refus.svelte'; @@ -134,6 +137,10 @@ valeur={poids} lire={lireEntier} executer={ecrirePoids(critere)} + type="number" + min={1} + max={POIDS_MAX} + pas={1} /> {/if}
    diff --git a/src/interface/generation/Reglages.navigateur.test.js b/src/interface/generation/Reglages.navigateur.test.js index 1949710..c793faa 100644 --- a/src/interface/generation/Reglages.navigateur.test.js +++ b/src/interface/generation/Reglages.navigateur.test.js @@ -392,11 +392,22 @@ describe('l’ordre des priorités : l’éditeur (§ 5.7, A11, A12)', () => { expect(annonce(m)).toBe(t('generation.priorites.annonce', { critere: CUMULEES, palier: 3, paliers: 7, avec: [] })); }); - test('le poids d’un critère d’un palier partagé : 0 refusé contre son champ, rien d’écrit ; 5 écrit, une entrée', async () => { + test('le poids d’un critère d’un palier partagé : un champ nombre étroit de 1 à 100 ; 0 refusé contre son champ, rien d’écrit ; 5 écrit, une entrée', async () => { const m = await demonstration(); await cliquer(m, bouton(m, REDONDANCE, 'joindrePalier')); const champ = () => editeur(m).querySelector(`input[data-champ="poids.${REDONDANCE}"]`); expect(editeur(m).querySelector(`label[for="${champ().id}"]`).textContent.trim()).toBe(t('generation.priorites.poids', { critere: REDONDANCE })); + expect([champ().type, champ().min, champ().max, champ().step]).toEqual(['number', '1', '100', '1']); + // Étroit : six caractères de large, le contenu de la boîte, flèches + // comprises. + const sonde = document.createElement('span'); + sonde.style.cssText = 'position:absolute;font:inherit;visibility:hidden'; + sonde.textContent = '0'.repeat(6); + champ().parentElement.append(sonde); + const sixCaracteres = sonde.getBoundingClientRect().width; + sonde.remove(); + const style = getComputedStyle(champ()); + expect(Number.parseFloat(style.width)).toBeCloseTo(sixCaracteres, 0); const e0 = journal(m); await cliquer(m, champ()); champ().select(); diff --git a/src/interface/jetons.css b/src/interface/jetons.css index e095abd..61d2030 100644 --- a/src/interface/jetons.css +++ b/src/interface/jetons.css @@ -24,11 +24,18 @@ appartenances), --couleur-conflit-voisins (nouveaux voisins) et --couleur-conflit-table (nouvelle table). Chacune ne peint que la trame de sa règle ; tout autre jeton chromatique se tient à 30° au moins de chacune, - et aucun ne porte la valeur de l'une. Elles se distinguent entre elles et - des autres marques du plan sous les trois dichromaties (SEPARATIONS, - marques.js), et tiennent 3:1 sur le fond du plateau, qui borde leurs - traits. Le contour épaissi d'une table en conflit, commun aux trois, est - de l'encre forte du plan, --couleur-contour-fort. + sauf le rouge du retrait, et aucun ne porte la valeur de l'une. Elles se + distinguent entre elles et des autres marques du plan sous les trois + dichromaties (SEPARATIONS, marques.js), et tiennent 3:1 sur le fond du + plateau, qui borde leurs traits. Le contour épaissi d'une table en + conflit, commun aux trois, est de l'encre forte du plan, + --couleur-contour-fort. + + Le rouge du retrait, --couleur-retrait, peint la croix cerclée d'une + commande qui retire (Commande, variante retrait), sur la carte et son + fond sourd, jamais sur le plan : c'est le seul jeton chromatique admis à + moins de 30° d'une teinte de conflit (JETON_RETRAIT, marques.js), le + canal chromatique que les conflits se réservent étant celui du plan. La hachure d'une place à pourvoir peint des traits --couleur-hachure sur le fond de la chaise, --couleur-chaise-fond : ce sont ses deux couleurs. @@ -72,7 +79,8 @@ le neutre et les appartenances, chacun un fond teinté et une marque, que lisent les pastilles ; la bande de mode, un fond, un filet et une teinte par mode, celle de son icône ; les messages — avis, refus, - information —, chacun son encre, un fond, un filet et une marque. + information —, chacun son encre, un fond, un filet et une marque ; le + retrait, la teinte de sa croix. Le texte d'une pastille ou de la bande de mode garde l'encre de la page (§ 12.7) : la teinte se porte par le fond et la marque. Les marques des @@ -134,9 +142,11 @@ textarea { --rayon-3: 0.75rem; --rayon-pilule: 62.5rem; - /* La hauteur d'une cible principale (44 px), et la largeur au-delà de - laquelle le contenu d'un écran se centre. */ + /* La hauteur d'une cible principale (44 px), le côté minimal d'une cible + (24 px, § 14.5), et la largeur au-delà de laquelle le contenu d'un + écran se centre. */ --hauteur-cible: 2.75rem; + --cible-minimale: 1.5rem; --largeur-page: 87rem; /* Ombres : une couleur opaque par thème, --couleur-ombre ; celle d'une @@ -229,6 +239,9 @@ textarea { --couleur-information-filet: #b7cef0; --couleur-information-marque: var(--couleur-information); + /* Retrait : la croix cerclée d'une commande qui retire. */ + --couleur-retrait: #c62828; + /* Désignation. Le focus, la sélection, la mise en évidence et le fantôme passent sur une chaise vide comme sur une chaise pleine : leur clarté se tient entre le fond et le plein de la chaise, à 3:1 de chacun. */ @@ -334,6 +347,8 @@ textarea { --couleur-information-filet: #34507a; --couleur-information-marque: var(--couleur-information); + --couleur-retrait: #ff6b6b; + --couleur-focus: #8764e1; --couleur-selection: #4070f0; --couleur-mise-en-evidence: #00897b; diff --git a/src/interface/marques.js b/src/interface/marques.js index 48cc1c3..ab75d45 100644 --- a/src/interface/marques.js +++ b/src/interface/marques.js @@ -52,6 +52,14 @@ export const CONFLITS = Object.freeze( /** Les jetons des teintes de conflit, dans l'ordre de CONFLITS. */ export const JETONS_CONFLIT = Object.freeze(CONFLITS.map(({ jeton }) => jeton)); +/** Le jeton du rouge du retrait (§ 12.7) : la croix cerclée d'une commande + * qui retire (Commande, variante retrait), sur la carte et son fond sourd, + * jamais sur le plan. C'est le seul jeton chromatique admis à moins de 30° + * d'une teinte de conflit (verifierTeintesReservees, palette.js) : le + * canal chromatique que les conflits se réservent est celui du plan, où il + * ne se pose pas. */ +export const JETON_RETRAIT = c('retrait'); + /** Écarts perçus minimaux d'une teinte de conflit, en distance OKLab × 100 * mesurée en couleurs d'origine et sous chaque dichromatie (ecartPercu, * palette.js) : entreConflits, d'une teinte de conflit à une autre — la @@ -152,6 +160,9 @@ export const MARQUES = Object.freeze([ // contenu d'une feuille imprimée, mesuré sur le papier, clair dans les // deux thèmes. marque('filigrane', 'filigrane', ['papier']), + // La croix cerclée d'un retrait, seul contenu de son bouton : sur la + // carte, et sur son fond sourd, celui du survol. + marque('retrait', 'retrait', ['carte-fond', 'carte-fond-sourd']), ]); // Les fonds teintés d'une pastille : ceux de ses teintes, puis ceux des diff --git a/src/interface/marques.test.js b/src/interface/marques.test.js index 1c40195..e820ea4 100644 --- a/src/interface/marques.test.js +++ b/src/interface/marques.test.js @@ -18,7 +18,7 @@ const NOMS_MARQUES = [ 'cadenasFerme', 'cadenasOuvert', 'anneau', 'hachure', 'remplissagePlein', 'contourConflit', 'trameAppartenance', 'trameVoisins', 'trameTable', 'pastille', 'poignee', 'gel', 'miseEnEvidence', 'selection', 'focus', - 'contourTable', 'contourChaise', 'echelle', 'fantome', 'chargement', 'filigrane', + 'contourTable', 'contourChaise', 'echelle', 'fantome', 'chargement', 'filigrane', 'retrait', ]; // Les remplissages d'une chaise : fond, pleine, et les deux couleurs de la @@ -39,7 +39,7 @@ const FONDS_REQUIS = { const parNom = (registre, nom) => registre.find((e) => e.nom === nom); describe('registre des marques', () => { - test('les vingt et une marques du contrat, noms uniques, seuil 3, au moins un fond chacune', () => { + test('les vingt-deux marques du contrat, noms uniques, seuil 3, au moins un fond chacune', () => { assert.equal(MARQUES.length, NOMS_MARQUES.length); assert.deepEqual(MARQUES.map((m) => m.nom), NOMS_MARQUES); assert.equal(new Set(MARQUES.map((m) => m.nom)).size, MARQUES.length); diff --git a/src/interface/palette.js b/src/interface/palette.js index 328b774..6ee8fbd 100644 --- a/src/interface/palette.js +++ b/src/interface/palette.js @@ -273,14 +273,14 @@ export function teinte(couleur) { /** § 12.7 : chaque teinte réservée — celles des conflits — est chromatique, * et la teinte de chaque autre jeton chromatique se tient à ECART_TEINTE - * degrés au moins de chacune, dans chaque thème. Les teintes réservées ne - * se mesurent pas entre elles : verifierSeparation les distingue. Rend les - * fautes [{theme, reservee, jeton, ecart}], ecart en degrés sur le cercle, - * dans l'ordre thème, teinte réservée, jeton ; une teinte réservée - * achromatique est elle-même une faute, jeton égal à reservee et ecart - * null — aucune teinte n'est alors réservée. Un jeton réservé absent d'un - * thème lève. */ -export function verifierTeintesReservees(texteCss, reservees) { + * degrés au moins de chacune, dans chaque thème, sauf celle d'un jeton + * d'admis, qui ne se mesure pas. Les teintes réservées ne se mesurent pas + * entre elles : verifierSeparation les distingue. Rend les fautes + * [{theme, reservee, jeton, ecart}], ecart en degrés sur le cercle, dans + * l'ordre thème, teinte réservée, jeton ; une teinte réservée achromatique + * est elle-même une faute, jeton égal à reservee et ecart null — aucune + * teinte n'est alors réservée. Un jeton réservé absent d'un thème lève. */ +export function verifierTeintesReservees(texteCss, reservees, admis = []) { const fautes = []; for (const theme of THEMES) { const jetons = lireJetons(texteCss, theme); @@ -292,7 +292,7 @@ export function verifierTeintesReservees(texteCss, reservees) { continue; } for (const [nom, couleur] of jetons) { - if (reservees.includes(nom)) continue; + if (reservees.includes(nom) || admis.includes(nom)) continue; const h = teinte(couleur); if (h === null) continue; const brut = Math.abs(h - reference); diff --git a/src/interface/palette.test.js b/src/interface/palette.test.js index b058d77..d8a1f87 100644 --- a/src/interface/palette.test.js +++ b/src/interface/palette.test.js @@ -11,7 +11,7 @@ import { readdirSync, readFileSync } from 'node:fs'; import { join } from 'node:path'; import { fileURLToPath } from 'node:url'; import { describe, test } from '../../test/lanceur.js'; -import { JETONS_CONFLIT } from './marques.js'; +import { JETONS_CONFLIT, JETON_RETRAIT, MARQUES } from './marques.js'; import { SIMULATIONS, contraste, @@ -320,6 +320,9 @@ describe('teinte et verifierTeintesReservees (§ 12.7)', () => { assert.deepEqual(fautes.map((f) => `${f.theme}:${f.jeton}`), [ 'clair:--couleur-b', 'clair:--couleur-d', 'sombre:--couleur-b', 'sombre:--couleur-d', ]); + // Un jeton admis ne se mesure pas ; les autres, si. + const admis = verifierTeintesReservees(css, ['--couleur-conflit'], ['--couleur-b']); + assert.deepEqual(admis.map((f) => `${f.theme}:${f.jeton}`), ['clair:--couleur-d', 'sombre:--couleur-d']); }); }); @@ -496,6 +499,21 @@ describe('jetons.css', () => { // Aucun autre jeton ne porte le préfixe des teintes de conflit. assert.deepEqual([...jetons.keys()].filter((n) => n.startsWith('--couleur-conflit')), JETONS_CONFLIT, theme); } - assert.deepEqual(verifierTeintesReservees(JETONS, JETONS_CONFLIT), []); + assert.deepEqual(verifierTeintesReservees(JETONS, JETONS_CONFLIT, [JETON_RETRAIT]), []); + }); + + test('le rouge du retrait est le seul jeton admis près d’une teinte de conflit : chromatique, sa valeur à lui, peint sur la carte seulement, jamais sur le plan', () => { + assert.equal(JETON_RETRAIT, '--couleur-retrait'); + // Sans l'admission, le retrait est la seule faute. + assert.deepEqual([...new Set(verifierTeintesReservees(JETONS, JETONS_CONFLIT).map((f) => f.jeton))], [JETON_RETRAIT]); + for (const theme of ['clair', 'sombre']) { + const jetons = lireJetons(JETONS, theme); + const couleur = jetons.get(JETON_RETRAIT); + assert.notEqual(teinte(couleur), null, theme); + const memeValeur = [...jetons].filter(([n, c]) => n !== JETON_RETRAIT && String(c) === String(couleur)); + assert.deepEqual(memeValeur.map(([n]) => n), [], theme); + } + const peintes = MARQUES.filter((m) => m.jeton === JETON_RETRAIT || m.fonds.includes(JETON_RETRAIT)); + assert.deepEqual(peintes.map((m) => [m.nom, [...m.fonds]]), [['retrait', ['--couleur-carte-fond', '--couleur-carte-fond-sourd']]]); }); }); diff --git a/src/interface/participants/Fiche.svelte b/src/interface/participants/Fiche.svelte index 12bd172..ca138bf 100644 --- a/src/interface/participants/Fiche.svelte +++ b/src/interface/participants/Fiche.svelte @@ -18,10 +18,11 @@ // // Les étiquettes (etiquettes.js) : une pastille neutre à icône par // étiquette, dans l'ordre de la charge — la teinte d'appartenance ne sert - // qu'à l'appartenance (§ 12.7) —, chacune suivie de sa commande - // « Retirer », nommée par elle ; puis un formulaire d'ajout, dont le - // champ reçoit une ou plusieurs étiquettes séparées comme dans une - // cellule CSV. Entrée, ou « Ajouter », envoie la saisie entière à + // qu'à l'appartenance (§ 12.7) —, chacune suivie, en écriture seulement, + // de sa commande de retrait : une croix cerclée rouge (Commande, variante + // retrait), nommée « Retirer « <étiquette> » » ; puis un formulaire + // d'ajout, dont le champ reçoit une ou plusieurs étiquettes séparées + // comme dans une cellule CSV. Entrée, ou « Ajouter », envoie la saisie entière à // changerEtiquettes, qui la découpe, la met en forme et la réconcilie : la // fiche ne lit rien elle-même. Un refus de l'ajout — étiquette mal formée, // trop d'étiquettes, séance en lecture, plan bloqué — se pose contre le @@ -31,14 +32,15 @@ // (ORTHOGRAPHE_RETENUE), tant que la révision qui l'a produit est la // courante et la fiche celle de la personne. Le refus d'un retrait se // pose à côté de sa commande (Commande). En lecture comme sur un plan - // bloqué, pastilles et commandes restent : la séance refuse le geste, et + // bloqué (cleDeMode, mode.js), aucune commande de retrait ne se montre ; + // pastilles, champ et « Ajouter » restent : la séance refuse l'ajout, et // le refus porte son remède. Une saisie non envoyée est un geste ouvert // (geste.js), qui suspend le compte d'inactivité ; l'envoi n'est pas // ré-entrant. Passer à une autre personne vide le champ et son refus ; le // refus d'un envoi qui revient après ce passage n'est posé nulle part. - // Un retrait abouti rend le focus au « Retirer » qui prend la place du - // sien — le suivant, sinon le précédent (ligneVoisine) —, ou au champ - // quand il n'en reste aucun. + // Un retrait abouti rend le focus à la commande de retrait qui prend la + // place de la sienne — la suivante, sinon la précédente (ligneVoisine) —, + // ou au champ quand il n'en reste aucune. // // La fiche est une carte : fond et filet de la carte, rayon de 12 px, // ombre légère ; ses étiquettes et légendes de tableau en petites @@ -50,6 +52,7 @@ import { getContext, onDestroy, tick, untrack } from 'svelte'; import { nomAffiche } from '../../application/personnes.js'; import { etatPlaces, statuts } from '../../application/places.js'; + import { cleDeMode } from '../mode.js'; import Commande from '../primitives/Commande.svelte'; import Icone from '../primitives/Icone.svelte'; import Pastille from '../primitives/Pastille.svelte'; @@ -79,7 +82,7 @@ const etapes = $derived(itineraire(participant.id, charge.evenement.tours, (tour) => etatPlaces(charge, { tour }))); // La fiche et son champ d'ajout, montés : le défilement vise la fiche, - // le focus d'après un retrait ses « Retirer » ou le champ. + // le focus d'après un retrait ses commandes de retrait ou le champ. let element; let champ; $effect(() => { @@ -97,6 +100,9 @@ const idSignal = `${uid}-orthographe`; const pastilles = $derived(etiquettesDeLaFiche(participant)); + // Les commandes de retrait ne se montrent qu'en écriture, hors d'un plan + // bloqué. + const retraitOffert = $derived(cleDeMode($seance) === 'coquille.mode.ecriture'); const signaux = $derived(signauxOrthographe(dernier, { revision: $seance.evenement?.revision ?? null, participant: participant.id })); const decrit = $derived(refusChamp !== null ? idRefus : signaux.length > 0 ? idSignal : undefined); @@ -142,8 +148,8 @@ } // Retire motCle ; aboutie, quand le bouton détruit a laissé le focus au - // document, le porte au « Retirer » voisin ou au champ. Un refus remonte - // à Commande, qui le pose à côté du bouton resté en place. + // document, le porte à la commande de retrait voisine ou au champ. Un + // refus remonte à Commande, qui le pose à côté du bouton resté en place. async function retirer(motCle) { const id = participant.id; const rang = pastilles.indexOf(motCle); @@ -190,13 +196,15 @@ {#each pastilles as motCle (motCle)}
  • - retirer(motCle)} - /> + {#if retraitOffert} + retirer(motCle)} + /> + {/if}
  • {/each}
@@ -399,8 +407,9 @@ } /* Les étiquettes : l'intitulé en petites capitales, les pastilles en - rangée qui se replie, chacune suivie de son « Retirer » ; puis le champ - d'ajout et son bouton sur une ligne, le refus ou le signal dessous. */ + rangée qui se replie, chacune suivie, en écriture, de sa croix de + retrait ; puis le champ d'ajout et son bouton sur une ligne, le refus + ou le signal dessous. */ .etiquettes { display: flex; flex-direction: column; diff --git a/src/interface/participants/Participants.navigateur.test.js b/src/interface/participants/Participants.navigateur.test.js index e5f4249..7cc08a9 100644 --- a/src/interface/participants/Participants.navigateur.test.js +++ b/src/interface/participants/Participants.navigateur.test.js @@ -935,10 +935,11 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', const rubrique = (m) => fiche(m).querySelector('[data-etiquettes]'); const champEtiquettes = (m) => fiche(m).querySelector('[data-champ="etiquettes"]'); const ajoutEtiquettes = (m) => fiche(m).querySelector('[data-commande="ajouterEtiquettes"]'); + // La commande de retrait d'une étiquette : une croix cerclée sans texte, + // nommée par son aria-label. + const retraits = (m) => [...fiche(m).querySelectorAll('[data-commande="retirerEtiquette"]')]; const retrait = (m, motCle) => - [...fiche(m).querySelectorAll('[data-commande="retirerEtiquette"]')].find( - (bouton) => bouton.textContent.trim() === t('participants.etiquettes.retirer', { motCle }), - ) ?? null; + retraits(m).find((bouton) => bouton.getAttribute('aria-label') === t('participants.etiquettes.retirer', { motCle })) ?? null; const legendeEtiquettes = (m) => section(m).querySelector('[data-legende-etiquettes]'); const etiquettesDe = (m, nom) => participants(m).find((p) => p.nom === nom).etiquettes; @@ -964,7 +965,7 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', await attendreSeance(m); } - test('la fiche montre chaque étiquette en pastille neutre à icône, sa commande « Retirer » nommée par elle ; sans étiquette, elle le dit', async () => { + test('la fiche montre chaque étiquette en pastille neutre à icône, sa croix de retrait rouge nommée par elle ; sans étiquette, elle le dit', async () => { const m = await evenementOuvert({ personnes: TROIS_ETIQUETEES }); await m.seance.executer('changerEtiquettes', { id: idDe(m, 'Ombrelle'), ajouter: 'finance, Montréal' }); await ouvrirFiche(m, 'Ombrelle'); @@ -980,10 +981,33 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', // La teinte d'appartenance ne sert qu'à l'appartenance (§ 12.7). const teintes = new Set([1, 2, 3, 4, 5, 6].map((rang) => JSON.stringify(jeton(`--couleur-appartenance-${rang}-fond`)))); for (const li of elements) expect(teintes.has(JSON.stringify(fondDe(pastilleDans(li))))).toBe(false); - for (const motCle of ['Montréal', 'finance']) expect(retrait(m, motCle), motCle).not.toBeNull(); - // En sombre, la pastille prend le neutre sombre. + // La croix de retrait : une icône seule, sans texte, la croix cerclée + // de la teinte du retrait, marquée « retrait », dans une cible de + // 24 px de côté au moins, et un anneau de focus au clavier. + for (const motCle of ['Montréal', 'finance']) { + const bouton = retrait(m, motCle); + expect(bouton, motCle).not.toBeNull(); + expect(bouton.textContent.trim(), motCle).toBe(''); + const traces = [...bouton.querySelectorAll('svg path')]; + expect(traces.length, motCle).toBeGreaterThan(0); + for (const trace of traces) { + expect(trace.dataset.marque).toBe('retrait'); + expect(composantes(getComputedStyle(trace).stroke)).toEqual(jeton('--couleur-retrait')); + } + const { width, height } = bouton.getBoundingClientRect(); + expect(Math.min(width, height), motCle).toBeGreaterThanOrEqual(24); + } + // Tab mène d'une croix à la suivante, qui porte l'anneau de focus. + retrait(m, 'Montréal').focus(); + await touche('Tab'); + expect(document.activeElement).toBe(retrait(m, 'finance')); + expect(retrait(m, 'finance').matches(':focus-visible')).toBe(true); + expect(getComputedStyle(retrait(m, 'finance')).outlineStyle).toBe('solid'); + expect(composantes(getComputedStyle(retrait(m, 'finance')).outlineColor)).toEqual(jeton('--couleur-focus')); + // En sombre, la pastille prend le neutre sombre, la croix le rouge sombre. await sousTheme('sombre', async () => { for (const li of elements) expect(fondDe(pastilleDans(li))).toEqual(jeton('--couleur-neutre-fond')); + expect(composantes(getComputedStyle(retrait(m, 'finance').querySelector('path')).stroke)).toEqual(jeton('--couleur-retrait')); }); await ouvrirFiche(m, 'Pervenche'); @@ -992,7 +1016,7 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', expect(fiche(m).querySelectorAll('[data-commande="retirerEtiquette"]')).toHaveLength(0); }); - test('au clavier : une saisie de trois étiquettes, Entrée, une entrée au journal ; le champ se vide et garde le focus ; « Retirer » ôte la sienne et rend le focus à sa voisine', async () => { + test('au clavier : une saisie de trois étiquettes, Entrée, une entrée au journal ; le champ se vide et garde le focus ; la croix de retrait ôte la sienne et rend le focus à sa voisine', async () => { const m = await evenementOuvert({ personnes: TROIS_ETIQUETEES }); await ouvrirFiche(m, 'Pervenche'); const champ = champEtiquettes(m); @@ -1017,8 +1041,8 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', expect(document.activeElement).toBe(champEtiquettes(m)); expect([...rubrique(m).querySelectorAll('li')].map((li) => texteDe(pastilleDans(li)))).toEqual(['bénévole', 'ressources humaines', 'voile']); - // « Retirer » activé par Entrée : le focus passe au « Retirer » suivant, - // sinon au précédent, sinon au champ ; jamais au document. + // La croix de retrait activée par Entrée : le focus passe à la croix + // suivante, sinon à la précédente, sinon au champ ; jamais au document. const retirerAuClavier = async (motCle) => { retrait(m, motCle).focus(); await touche('Enter'); @@ -1197,29 +1221,31 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', expect(legendeEtiquettes(m)).toBeNull(); }); - test('en lecture : les pastilles restent ; « Ajouter » et « Retirer » sont refusés, chacun avec son remède, et rien ne s’écrit', async () => { + test('en lecture : les pastilles restent, sans croix de retrait ; « Ajouter » est refusé avec son remède, rien ne s’écrit ; de retour en écriture, les croix reviennent', async () => { const m = await evenementOuvert({ personnes: TROIS_ETIQUETEES }); await m.seance.executer('changerEtiquettes', { id: idDe(m, 'Ombrelle'), ajouter: 'finance' }); await m.seance.passerEnLecture(); await ouvrirFiche(m, 'Ombrelle'); const avant = texteJournal(m); expect(texteDe(pastilleDans(rubrique(m).querySelector('li')))).toBe('finance'); + expect(retraits(m)).toHaveLength(0); await ajouterParClavier(m, 'bénévole'); const message = document.getElementById(champEtiquettes(m).getAttribute('aria-describedby')); expect(message.dataset.refus).toBe('MODE_LECTURE'); expect(message.querySelector('[data-commande]')).not.toBeNull(); - - await cliquer(retrait(m, 'finance')); - await attendreSeance(m); - const refusRetrait = retrait(m, 'finance').parentElement.querySelector('[data-refus]'); - expect(refusRetrait.dataset.refus).toBe('MODE_LECTURE'); - expect(refusRetrait.querySelector('[data-commande]')).not.toBeNull(); expect(etiquettesDe(m, 'Ombrelle')).toEqual(['finance']); expect(texteJournal(m)).toBe(avant); + + await m.seance.passerEnEcriture(); + await rendu(); + expect(retrait(m, 'finance')).not.toBeNull(); + await m.seance.passerEnLecture(); + await rendu(); + expect(retraits(m)).toHaveLength(0); }); - test('plan bloqué, en écriture : « Ajouter » et « Retirer » sont refusés avec « Débloquer » pour remède', async () => { + test('plan bloqué : aucune croix de retrait ; « Ajouter » est refusé avec « Débloquer » pour remède', async () => { const m = await evenementOuvert({ sieges: 4, tours: 2, tables: 1, personnes: TROIS_ETIQUETEES }); await m.seance.executer('changerEtiquettes', { id: idDe(m, 'Ombrelle'), ajouter: 'finance' }); await m.app.generation().generer({ graine: 1, nombre: 1, arret: 50, historique: 1000 }); @@ -1229,13 +1255,12 @@ describe('les étiquettes : la fiche et la légende (§ 4.5, § 10.2, § 5.9)', await ouvrirFiche(m, 'Ombrelle'); const avant = texteJournal(m); + expect(texteDe(pastilleDans(rubrique(m).querySelector('li')))).toBe('finance'); + expect(retraits(m)).toHaveLength(0); + await ajouterParClavier(m, 'bénévole'); const message = document.getElementById(champEtiquettes(m).getAttribute('aria-describedby')); expect(message.querySelector('[data-commande="debloquer"]')).not.toBeNull(); - await cliquer(retrait(m, 'finance')); - await attendreSeance(m); - const refusRetrait = retrait(m, 'finance').parentElement.querySelector('[data-refus]'); - expect(refusRetrait.querySelector('[data-commande="debloquer"]')).not.toBeNull(); expect(texteJournal(m)).toBe(avant); }); }); diff --git a/src/interface/primitives/Champ.svelte b/src/interface/primitives/Champ.svelte index 8d2db3d..8fe8de5 100644 --- a/src/interface/primitives/Champ.svelte +++ b/src/interface/primitives/Champ.svelte @@ -36,13 +36,32 @@ // son étiquette seule ne le distingue pas d'un homonyme ; null, // l'étiquette le nomme. L'étiquette visible ne change pas. Le refus reçoit // nom pour nommer son remède. + // + // type est celui de l'entrée : 'text', le défaut, ou 'number', un champ + // étroit de six caractères, qui porte min, max et pas (step) quand ils + // sont donnés. La lecture reste celle de lire, et le domaine celui de + // l'exécution : le navigateur rend vide un texte qu'il ne lit pas comme + // un nombre, que lire refuse comme tout texte vide. import { getContext, onDestroy, untrack } from 'svelte'; import { effetDe } from '../raccourcis.js'; import { creerMachineChamp, estRefusSeance, refusSeanceCourant } from './champ.js'; import { creerGeste } from './geste.js'; import Refus from './Refus.svelte'; - let { cle, etiquette, valeur, lire, executer, details = {}, nom = null, gestes = {} } = $props(); + let { + cle, + etiquette, + valeur, + lire, + executer, + details = {}, + nom = null, + gestes = {}, + type = 'text', + min = null, + max = null, + pas = null, + } = $props(); const t = getContext('t'); const seance = getContext('seance') ?? null; @@ -192,7 +211,10 @@ {libelle}{#if forme === 'retrait'}{:else}{libelle}{/if} {#if refus !== null} (refus = null)} objet={nomAccessible} {gestes} /> @@ -177,6 +189,27 @@ background-color: var(--couleur-carte-fond-sourd); } + /* Le retrait : l'icône seule, de la teinte du retrait, centrée dans une + cible ronde de --cible-minimale de côté au moins ; ni fond ni filet au + repos, le fond sourd de la carte au survol. */ + button.retrait { + display: inline-flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + min-width: var(--cible-minimale); + min-height: var(--cible-minimale); + padding: 0; + border-color: transparent; + border-radius: var(--rayon-pilule); + background-color: transparent; + color: var(--couleur-retrait); + } + + button.retrait:hover { + background-color: var(--couleur-carte-fond-sourd); + } + button[aria-disabled='true'] { border-style: dashed; color: var(--couleur-page-texte-secondaire); diff --git a/src/interface/primitives/Icone.svelte b/src/interface/primitives/Icone.svelte index d956a23..1ed0a1e 100644 --- a/src/interface/primitives/Icone.svelte +++ b/src/interface/primitives/Icone.svelte @@ -6,10 +6,13 @@ // sans remplissage, du trait de la couleur courante — le parent la règle // par color, d'un jeton. Elle est cachée aux technologies d'assistance et // ne prend jamais le focus : un libellé l'accompagne toujours. taille : - // le côté du carré, en px. Un nom inconnu lève RangeError au montage. + // le côté du carré, en px. marque, le nom d'une marque du registre + // (MARQUES, marques.js), se pose en data-marque sur chacun de ses tracés, + // que les épreuves de rendu mesurent ; null, aucun. Un nom inconnu lève + // RangeError au montage. import { traceIcone } from './icones.js'; - let { nom, taille = 16 } = $props(); + let { nom, taille = 16, marque = null } = $props(); const traces = $derived(traceIcone(nom)); @@ -28,7 +31,7 @@ focusable="false" > {#each traces as trace, rang (rang)} - + {/each} diff --git a/src/interface/primitives/commande.js b/src/interface/primitives/commande.js index 6bf8f9e..1ba7df4 100644 --- a/src/interface/primitives/commande.js +++ b/src/interface/primitives/commande.js @@ -39,19 +39,26 @@ import { COMMANDES } from '../../application/commandes.js'; /** Les variantes d'une commande, la secondaire en tête — celle d'une * commande qui n'en donne pas : principale, l'action à faire sur l'écran, * pleine de la teinte de l'action ; secondaire, à filet ; discrète, sans - * fond ni filet au repos. La variante ne change que l'apparence : le rôle, - * les attributs et la machine restent ceux de toute commande. */ -export const VARIANTES_COMMANDE = Object.freeze(['secondaire', 'principale', 'discrete']); + * fond ni filet au repos ; retrait, une croix cerclée de la teinte du + * retrait, sans fond ni filet au repos, dont le libellé devient le nom + * accessible. La variante ne change que l'apparence : le rôle, la + * désignation et la machine restent ceux de toute commande. */ +export const VARIANTES_COMMANDE = Object.freeze(['secondaire', 'principale', 'discrete', 'retrait']); /** - * Une variante de commande, rendue telle quelle. + * Une variante de commande, rendue telle quelle. Le retrait ne montre + * aucun texte : son libellé armé n'aurait où s'afficher, et une commande à + * confirmer ne le prend pas. * * @param {string} variante - * @returns {'secondaire'|'principale'|'discrete'} - * @throws {RangeError} hors de VARIANTES_COMMANDE, en la nommant + * @param {string|null} [confirmer] la clé de confirmation de la commande + * @returns {'secondaire'|'principale'|'discrete'|'retrait'} + * @throws {RangeError} hors de VARIANTES_COMMANDE, en la nommant ; le + * retrait d'une commande à confirmer */ -export function exigerVariante(variante) { +export function exigerVariante(variante, confirmer = null) { if (!VARIANTES_COMMANDE.includes(variante)) throw new RangeError(`commande : variante inconnue ${JSON.stringify(variante) ?? 'undefined'}`); + if (variante === 'retrait' && confirmer !== null) throw new RangeError('commande : le retrait ne se confirme pas'); return variante; } diff --git a/src/interface/primitives/commande.test.js b/src/interface/primitives/commande.test.js index f92ca0b..5abf1fa 100644 --- a/src/interface/primitives/commande.test.js +++ b/src/interface/primitives/commande.test.js @@ -352,8 +352,8 @@ describe('commande : l’action d’un remède', () => { }); describe('commande : la variante', () => { - test('trois variantes, la secondaire en tête : celle d’une commande qui n’en donne pas', () => { - assert.deepEqual(VARIANTES_COMMANDE, ['secondaire', 'principale', 'discrete']); + test('quatre variantes, la secondaire en tête : celle d’une commande qui n’en donne pas', () => { + assert.deepEqual(VARIANTES_COMMANDE, ['secondaire', 'principale', 'discrete', 'retrait']); assert.ok(Object.isFrozen(VARIANTES_COMMANDE)); }); @@ -363,4 +363,10 @@ describe('commande : la variante', () => { assert.throws(() => exigerVariante(autre), (e) => e instanceof RangeError && e.message.includes(JSON.stringify(autre) ?? 'undefined'), String(autre)); } }); + + test('le retrait ne se confirme pas : avec une clé de confirmation, exigerVariante lève RangeError ; les autres variantes la prennent', () => { + assert.throws(() => exigerVariante('retrait', 'communs.commande.confirmer'), RangeError); + assert.equal(exigerVariante('retrait', null), 'retrait'); + for (const variante of ['secondaire', 'principale', 'discrete']) assert.equal(exigerVariante(variante, 'communs.commande.confirmer'), variante); + }); }); diff --git a/src/interface/primitives/habillage.navigateur.test.js b/src/interface/primitives/habillage.navigateur.test.js index 9a199b1..1c0d164 100644 --- a/src/interface/primitives/habillage.navigateur.test.js +++ b/src/interface/primitives/habillage.navigateur.test.js @@ -415,6 +415,30 @@ describe('commande : la variante', () => { expect(style(secondaire).fontSize).toBe('16px'); expect(() => commande({ variante: 'primaire' })).toThrow(RangeError); }); + + test('retrait : la croix cerclée seule, de la teinte du retrait, sans texte ni fond, nommée par son libellé, dans une cible de 24 px au moins ; à confirmer, elle lève au montage', async () => { + const libelle = t('participants.etiquettes.retirer', { motCle: 'voile' }); + const retrait = commande({ variante: 'retrait', cle: 'participants.etiquettes.retirer', details: { motCle: 'voile' }, nom: 'retirerEtiquette' }); + expect(retrait.textContent.trim()).toBe(''); + expect(retrait.getAttribute('aria-label')).toBe(libelle); + expect(retrait.getAttribute('data-commande')).toBe('retirerEtiquette'); + expect([...retrait.querySelectorAll('svg path')].map((p) => p.getAttribute('d'))).toEqual([...ICONES.croixCerclee]); + const { width, height } = retrait.getBoundingClientRect(); + expect(Math.min(width, height)).toBeGreaterThanOrEqual(24); + for (const theme of THEMES) { + await sousTheme(theme, () => { + expect(fond(retrait), theme).toEqual(TRANSPARENT); + expect(composantes(style(retrait).borderTopColor)[3], theme).toBe(0); + for (const trace of retrait.querySelectorAll('path')) { + expect(trace.dataset.marque, theme).toBe('retrait'); + expect(composantes(getComputedStyle(trace).stroke), theme).toEqual(jeton('--couleur-retrait')); + } + }); + } + // Un nom accessible donné passe devant le libellé. + expect(commande({ variante: 'retrait', nomAccessible: 'Ôter' }).getAttribute('aria-label')).toBe('Ôter'); + expect(() => commande({ variante: 'retrait', confirmer: 'communs.commande.confirmerDeblocage' })).toThrow(RangeError); + }); }); describe('refus, infobulle, champ et fenêtre à confirmer : habillés des jetons', () => { diff --git a/src/interface/primitives/icones.js b/src/interface/primitives/icones.js index e81c03d..c131db3 100644 --- a/src/interface/primitives/icones.js +++ b/src/interface/primitives/icones.js @@ -44,6 +44,8 @@ const DESSINS = [ ['demarrer', ['M8 5l11 7-11 7z']], // Une étiquette (§ 4.5) : l'étiquette à œillet, pointe en bas à droite. ['etiquettes', ['M3 3h8l10 10-8 8L3 11z', cercle(7.5, 7.5, 1.5)]], + // Un retrait (Commande, variante retrait) : une croix dans un cercle. + ['croixCerclee', [cercle(12, 12, 9), 'M9 9l6 6M15 9l-6 6']], ]; /** Les noms des icônes, dans l'ordre du module. */ diff --git a/src/interface/primitives/icones.test.js b/src/interface/primitives/icones.test.js index b13ae9e..5954d65 100644 --- a/src/interface/primitives/icones.test.js +++ b/src/interface/primitives/icones.test.js @@ -17,7 +17,7 @@ describe('icônes des primitives', () => { assert.deepEqual(NOMS_ICONES, [ 'crayon', 'listePoints', 'coche', 'cadenas', 'liste', 'importer', 'exporter', 'ajouter', 'chercher', 'calendrier', 'information', 'triangle', 'interdit', 'dossier', 'oeil', 'stylo', 'defaire', 'imprimer', - 'etoile', 'croix', 'chevron', 'points', 'demarrer', 'etiquettes', + 'etoile', 'croix', 'chevron', 'points', 'demarrer', 'etiquettes', 'croixCerclee', ]); assert.ok(Object.isFrozen(ICONES) && Object.isFrozen(NOMS_ICONES)); assert.deepEqual(Object.keys(ICONES).sort(), [...NOMS_ICONES].sort()); diff --git a/src/interface/primitives/primitives.navigateur.test.js b/src/interface/primitives/primitives.navigateur.test.js index 4aff6bb..13d1b8d 100644 --- a/src/interface/primitives/primitives.navigateur.test.js +++ b/src/interface/primitives/primitives.navigateur.test.js @@ -251,6 +251,46 @@ describe('champ : la fin du geste (§ 2.1, § 8.2)', () => { }); }); +describe('champ : le type de l’entrée', () => { + test('texte par défaut, sans bornes ; nombre : min, max et pas posés, une lettre ne s’y inscrit pas, et lire refuse le vide qu’elle laisse ; des chiffres s’écrivent', async () => { + const montage = await preparer(); + const { entree } = monterChamp(montage); + expect(entree.type).toBe('text'); + for (const attribut of ['min', 'max', 'step']) expect(entree.hasAttribute(attribut), attribut).toBe(false); + + const recus = []; + const cible = monter( + Champ, + { + cle: 'nombre', + etiquette: 'communs.commande.modifier', + valeur: 3, + type: 'number', + min: 1, + max: 100, + pas: 1, + lire: (texte) => (/^\d+$/.test(texte) ? { valeur: Number(texte) } : { refus: { code: 'NON_ENTIER', details: { saisie: texte, remede: null } } }), + executer: (valeur) => recus.push(valeur), + }, + montage.contexte, + ); + const nombre = cible.querySelector('input[data-champ="nombre"]'); + expect([nombre.type, nombre.min, nombre.max, nombre.step, nombre.value]).toEqual(['number', '1', '100', '1', '3']); + await cliquer(nombre); + nombre.select(); + await taper('x'); + await cliquerAilleurs(); + expect(nombre.value).toBe(''); + expect(cible.querySelector('[data-refus="NON_ENTIER"]')).not.toBeNull(); + expect(recus).toEqual([]); + await cliquer(nombre); + await taper('42'); + await cliquerAilleurs(); + expect(recus).toEqual([42]); + expect(cible.querySelector('[data-refus]')).toBeNull(); + }); +}); + describe('champ : le refus de l’exécution (§ 2.1, § 5.9)', () => { test('executer refusé avec un code : le refus se pose contre le champ, la saisie gardée, rien d’écrit ; le refus levé par son remède, le champ rend la valeur enregistrée, et une saisie nouvelle s’écrit', async () => { const montage = await preparer(); diff --git a/test/navigateur/ecrans.js b/test/navigateur/ecrans.js index 0661fc0..a778c82 100644 --- a/test/navigateur/ecrans.js +++ b/test/navigateur/ecrans.js @@ -659,7 +659,7 @@ export const ECRANS = Object.freeze([ async atteindre(contexte) { // Deux personnes étiquetées, puis la fiche d'une troisième, où // « FINANCE » tapé au clavier s'enregistre sous l'orthographe que - // l'événement porte : les pastilles neutres et leur « Retirer », le + // l'événement porte : les pastilles neutres et leur croix de retrait, le // signal d'orthographe contre le champ, et la légende des étiquettes // sous celle des appartenances. let charge = chargePrincipale();