import { FormHandler } from './form-handling/FormHandler.js'; import { Logger } from '../core/logger.js'; /** * FormAutoSave - Wrapper for FormHandler autosave functionality * * This module provides a simple interface to initialize autosave * for all forms on the page. The actual autosave logic is implemented * in FormHandler. */ export class FormAutoSave { /** * Initialize autosave for all forms on the page * @param {Object} options - Options for autosave initialization * @returns {Array} Array of initialized FormHandler instances */ static initializeAll(options = {}) { const forms = document.querySelectorAll('form[data-autosave]'); const instances = []; forms.forEach(form => { try { const handler = FormHandler.create(form, { enableAutosave: true, ...options }); instances.push(handler); } catch (error) { Logger.error('[FormAutoSave] Failed to initialize autosave for form', { form: form.id || 'unnamed', error }); } }); Logger.info(`[FormAutoSave] Initialized autosave for ${instances.length} forms`); return instances; } /** * Initialize autosave for a specific form * @param {HTMLFormElement} form - The form element * @param {Object} options - Options for autosave * @returns {FormHandler} The FormHandler instance */ static initialize(form, options = {}) { return FormHandler.create(form, { enableAutosave: true, ...options }); } }