@starterlib/cli 0.11.2 → 0.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starterlib/cli",
3
- "version": "0.11.2",
3
+ "version": "0.11.3",
4
4
  "description": "Chaine de verification et de construction des SPA du socle frontal starter : starter-web verify, construire, sprite, manifeste, precompresser. Jamais en dependance de production.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -298,12 +298,15 @@ export function rechercherLesFormulations(projet, catalogues) {
298
298
 
299
299
  /**
300
300
  * Les perimetres de catalogues d'un projet : ceux du manifeste (remote), ceux de
301
- * `starterWeb.i18n.perimetres` (application autonome, lot 240), `socle` pour l'hote.
301
+ * `starterWeb.i18n.perimetres` (application autonome, lot 240), `socle` pour l'hote, plus ceux qu'il
302
+ * declare dans `starterWeb.i18n.perimetres` (un catalogue charge apres le premier ecran : `aplomb`,
303
+ * remarque d'Aplomb, P09-04) ; `socle` reste juge le premier, sans doublon.
302
304
  */
303
305
  export function perimetresDuProjet(projet) {
304
306
  if (projet.role === 'remote') return projet.source?.i18n?.perimetres ?? [];
305
307
  if (projet.role === 'autonome') return projet.paquet.starterWeb?.i18n?.perimetres ?? ['socle'];
306
- return ['socle'];
308
+ const declares = projet.paquet?.starterWeb?.i18n?.perimetres ?? [];
309
+ return ['socle', ...declares.filter((perimetre) => perimetre !== 'socle')];
307
310
  }
308
311
 
309
312
  export default {
@@ -145,9 +145,15 @@ export const LECTURE_DE_COOKIE_DU_CADRE =
145
145
  * navigateur. De cette forme exacte, chacune est neutralisee UNE fois dans tout le livrable ; tout
146
146
  * autre acces au stockage, n'importe ou, reste un defaut (ADR 0014). Constat de la montee d'Aplomb
147
147
  * a la 0.11.0, 2026-10-07.
148
+ *
149
+ * Le motif ne part que du DEBUT d'un identifiant (`(?<![\w$])`) : sans cet ancrage, chaque position
150
+ * d'une longue suite de lettres et de chiffres (une donnee en base 64 du livrable) relancait la
151
+ * recherche, en temps carre ; l'etape tenait plus de sept minutes sur l'ecran anonyme d'Aplomb
152
+ * (2026-10-08). Les correspondances sont les memes : la premiere qui reussit part toujours du debut
153
+ * de l'identifiant.
148
154
  */
149
155
  export const STOCKAGES_DE_L_ORCHESTRATEUR =
150
- /([\w$]+)=([\w$]+)=>\(([\w$]+),([\w$]+)\)=>\{let ([\w$]+)=\{get\(\)\{let ([\w$]+)=(localStorage|sessionStorage)\.getItem\(`\$\{\2\}\.\$\{String\(\3\)\}`\);return \6\?JSON\.parse\(\6\):[\w$]+\(\3,\4\)\},set\(([\w$]+)\)\{return \7\.setItem\(`\$\{\2\}\.\$\{String\(\3\)\}`,JSON\.stringify\(\8\)\),\5\},clear\(\)\{return \7\.setItem\(`\$\{\2\}\.\$\{String\(\3\)\}`,JSON\.stringify\(\4\)\),this\}\};return \5\};\1\.type="\7";Object\.freeze\(\1\);/g;
156
+ /(?<![\w$])([\w$]+)=([\w$]+)=>\(([\w$]+),([\w$]+)\)=>\{let ([\w$]+)=\{get\(\)\{let ([\w$]+)=(localStorage|sessionStorage)\.getItem\(`\$\{\2\}\.\$\{String\(\3\)\}`\);return \6\?JSON\.parse\(\6\):[\w$]+\(\3,\4\)\},set\(([\w$]+)\)\{return \7\.setItem\(`\$\{\2\}\.\$\{String\(\3\)\}`,JSON\.stringify\(\8\)\),\5\},clear\(\)\{return \7\.setItem\(`\$\{\2\}\.\$\{String\(\3\)\}`,JSON\.stringify\(\4\)\),this\}\};return \5\};\1\.type="\7";Object\.freeze\(\1\);/g;
151
157
 
152
158
  /** Les stockages qu'une fabrique de l'orchestrateur nomme, dans l'ordre ou le livrable les porte. */
153
159
  export function stockagesDeLOrchestrateur(contenu) {