xonecode 0.39.4 → 0.39.5

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.
@@ -7,7 +7,7 @@
7
7
  <!-- El icono oficial, servido por Vite desde `iconos/`. Es el mismo fichero que la
8
8
  marca de la barra superior: dos copias del logo acaban siendo dos logos. -->
9
9
  <link rel="icon" type="image/png" href="./iconos/xonecode.png" />
10
- <script type="module" crossorigin src="./assets/index-CYZEmLsX.js"></script>
10
+ <script type="module" crossorigin src="./assets/index-5CcbWnvf.js"></script>
11
11
  <link rel="stylesheet" crossorigin href="./assets/index-C57A_ylS.css">
12
12
  </head>
13
13
  <!-- Sin el atributo aquí: el oscuro es SOLO del splash (el registro de entorno y
@@ -897,7 +897,8 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
897
897
  /**
898
898
  * Los catálogos ya consultados en ESTE proceso, por proveedor. Se guardan porque cada
899
899
  * uno es una llamada de red: abrir el menú dos veces no la repite. Un fallo también se
900
- * recuerda —como fallo— hasta que alguien lo vuelva a pedir a propósito.
900
+ * recuerda —como fallo— hasta que alguien lo vuelva a pedir a propósito (desplegar ese
901
+ * proveedor en la pastilla) o cambie su credencial, que lo olvida.
901
902
  */
902
903
  const catalogos = new Map();
903
904
  /**
@@ -2448,6 +2449,12 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
2448
2449
  emitirModelos();
2449
2450
  return;
2450
2451
  }
2452
+ // Volver a pedir un catálogo que FALLÓ es preguntar de nuevo, y mientras tanto el fallo
2453
+ // viejo no se sigue enseñando: el cliente lee «consultando» hasta que llegue la respuesta.
2454
+ if (catalogos.get(id)?.error !== undefined) {
2455
+ catalogos.delete(id);
2456
+ emitirModelos();
2457
+ }
2451
2458
  try {
2452
2459
  const modelos = await opciones.catalogoDeModelos(id);
2453
2460
  /**
@@ -3118,6 +3125,9 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
3118
3125
  }
3119
3126
  try {
3120
3127
  const { ruta } = opciones.guardarCredencial(proveedor, clave);
3128
+ // Lo que el catálogo dijo con la clave vieja (un fallo, o la lista de otra cuenta) ya
3129
+ // no es de ésta: se olvida, y el próximo despliegue pregunta con la nueva.
3130
+ catalogos.delete(proveedor);
3121
3131
  informar(`credencial de ${proveedor} guardada en ${ruta}`);
3122
3132
  }
3123
3133
  catch (error) {
@@ -3230,6 +3240,7 @@ export function montarRutas(servidor, vestibulo, opciones = {}) {
3230
3240
  }
3231
3241
  try {
3232
3242
  const { ruta, borrada, quedaEnEntorno } = opciones.borrarCredencial(proveedor);
3243
+ catalogos.delete(proveedor);
3233
3244
  informar(borrada
3234
3245
  ? `credencial de ${proveedor} borrada de ${ruta}`
3235
3246
  : `${proveedor} no tenía credencial en ${ruta}`);