easy-forms-core 1.2.11 → 1.2.13

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.
@@ -421,6 +421,23 @@ interface FormSchema {
421
421
  };
422
422
  /** Dirección del layout: vertical (default) u horizontal */
423
423
  direction?: 'vertical' | 'horizontal';
424
+ /** Configuración de persistencia/autosave del formulario */
425
+ persistence?: PersistenceConfig;
426
+ }
427
+ /**
428
+ * Configuración de persistencia del formulario
429
+ */
430
+ interface PersistenceConfig {
431
+ /** Habilitar persistencia */
432
+ enabled?: boolean;
433
+ /** Clave para localStorage */
434
+ key: string;
435
+ /** Intervalo de autosave en ms (default: 1000) */
436
+ autoSave?: boolean;
437
+ /** Debounce para guardar en ms (default: 500) */
438
+ debounce?: number;
439
+ /** Callback cuando se restauran datos */
440
+ onRestore?: (values: Record<string, any>) => void;
424
441
  }
425
442
  /**
426
443
  * Componente personalizado para inyección
@@ -459,6 +476,10 @@ declare class EasyForm extends BrowserHTMLElement {
459
476
  */
460
477
  private slotTemplates;
461
478
  private skipPreserveValuesOnNextRender;
479
+ private persistenceConfig;
480
+ private persistenceDebounceTimer;
481
+ private pendingRestoreValues;
482
+ private isRestoringValues;
462
483
  static get observedAttributes(): string[];
463
484
  constructor();
464
485
  /**
@@ -750,6 +771,34 @@ declare class EasyForm extends BrowserHTMLElement {
750
771
  * Configura estilos básicos
751
772
  */
752
773
  private setupStyles;
774
+ /**
775
+ * Inicializa la persistencia del formulario
776
+ */
777
+ private initPersistence;
778
+ /**
779
+ * Restaura los valores desde localStorage
780
+ */
781
+ private restoreFromStorage;
782
+ /**
783
+ * Aplica los valores pendientes de restauración después del render
784
+ */
785
+ private applyPendingRestoreValues;
786
+ /**
787
+ * Actualiza los valores de los inputs del DOM
788
+ */
789
+ private updateInputsWithValues;
790
+ /**
791
+ * Guarda los valores en localStorage
792
+ */
793
+ private saveToStorage;
794
+ /**
795
+ * Programa un guardado debounced
796
+ */
797
+ private scheduleSave;
798
+ /**
799
+ * Limpia los datos de persistencia
800
+ */
801
+ private clearPersistence;
753
802
  }
754
803
 
755
804
  export { EasyForm };