valtech-components 4.0.940 → 4.0.941

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.
@@ -51,6 +51,30 @@ export declare class FormComponent implements OnInit, OnChanges, DoCheck {
51
51
  private previousUploadingCount;
52
52
  private uploadingFields;
53
53
  constructor(fb: FormBuilder, elementRef: ElementRef);
54
+ /** Arma la definición de controles (valor inicial + validadores) desde `props`. */
55
+ private buildFormControlsDef;
56
+ /**
57
+ * Reconstruye el `FormGroup` desde cero, con los valores iniciales de `props`
58
+ * actuales (no los que el usuario haya tecleado desde entonces).
59
+ *
60
+ * Existe para el caso en que Angular NO destruye el componente entre dos usos
61
+ * — típicamente `IonicRouteStrategy`, que cachea la página ruteada al navegar
62
+ * afuera y la reutiliza al volver sin correr `ngOnInit` de nuevo. Sin esto,
63
+ * un form de login mantiene lo que el usuario anterior tecleó después de
64
+ * cerrar sesión y volver a `/login`: el `FormGroup` se construyó UNA vez y
65
+ * nadie lo tocó desde entonces.
66
+ *
67
+ * Reconstruye el `FormGroup` entero (no `.reset(values)`) porque la
68
+ * definición trae `[valor, validators]` por control, no valores planos —
69
+ * reusar `buildFormControlsDef()` tal cual evita mantener dos formas de
70
+ * calcular "cuál es el valor inicial" que puedan desincronizarse.
71
+ *
72
+ * El caller (típicamente `val-login`, vía `ionViewWillEnter`) decide CUÁNDO
73
+ * llamarlo — acá no hay heurística de "cuándo resetear", porque un form de
74
+ * varios pasos sí podría querer conservar lo tecleado al volver a una
75
+ * pestaña.
76
+ */
77
+ resetForm(): void;
54
78
  ngOnInit(): void;
55
79
  ngOnChanges(changes: SimpleChanges): void;
56
80
  private patchInitialValuesFromProps;
@@ -5,6 +5,7 @@ import { ImageMetadata } from '../../atoms/image/types';
5
5
  import { LoginMetadata, LoginSuccessEvent, LoginErrorEvent, MFARequiredEvent } from './types';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class LoginComponent implements OnInit, OnDestroy {
8
+ private forms;
8
9
  props: LoginMetadata;
9
10
  onSuccess: EventEmitter<LoginSuccessEvent>;
10
11
  onError: EventEmitter<LoginErrorEvent>;
@@ -125,6 +126,21 @@ export declare class LoginComponent implements OnInit, OnDestroy {
125
126
  private listenForOAuthReturn;
126
127
  private stopListeningForOAuthReturn;
127
128
  ngOnInit(): void;
129
+ /**
130
+ * Ionic (`IonicRouteStrategy`) no destruye la página de login al navegar
131
+ * afuera — la "detach"-ea y la reutiliza si el usuario vuelve a la misma
132
+ * ruta, así que `ngOnInit` no vuelve a correr. `val-form` arma su
133
+ * `FormGroup` UNA sola vez en su propio `ngOnInit`; sin este hook, cerrar
134
+ * sesión y volver a `/login` mostraba el email y la contraseña que la
135
+ * sesión anterior había tecleado.
136
+ *
137
+ * `ionViewWillEnter` es el gancho de Ionic pensado exactamente para esto:
138
+ * corre en CADA entrada a la vista, sea la primera vez o una reutilización
139
+ * desde caché. Ionic lo invoca por duck-typing sobre cualquier componente
140
+ * de la jerarquía que lo declare, sin necesidad de implementar la interfaz
141
+ * `ViewWillEnter` (mismo patrón que `SelectSearchComponent` en esta lib).
142
+ */
143
+ ionViewWillEnter(): void;
128
144
  ngOnDestroy(): void;
129
145
  static ɵfac: i0.ɵɵFactoryDeclaration<LoginComponent, never>;
130
146
  static ɵcmp: i0.ɵɵComponentDeclaration<LoginComponent, "val-login", never, { "props": { "alias": "props"; "required": false; }; }, { "onSuccess": "onSuccess"; "onError": "onError"; "onMFARequired": "onMFARequired"; }, never, never, true, never>;
package/lib/version.d.ts CHANGED
@@ -2,4 +2,4 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export declare const VERSION = "4.0.940";
5
+ export declare const VERSION = "4.0.941";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valtech-components",
3
- "version": "4.0.940",
3
+ "version": "4.0.941",
4
4
  "private": false,
5
5
  "bin": {
6
6
  "valtech-firebase-config": "./src/lib/services/firebase/scripts/generate-sw-config.js"