package storage var storageHandle = templ.NewOnceHandle() // Internal script templates for storage operations script setLocalStorage(key string, value string) { localStorage.setItem(key, value) } script getLocalStorage(key string) { return localStorage.getItem(key) } script removeLocalStorage(key string) { localStorage.removeItem(key) } script setSessionStorage(key string, value string) { sessionStorage.setItem(key, value) } script getSessionStorage(key string) { return sessionStorage.getItem(key) } script removeSessionStorage(key string) { sessionStorage.removeItem(key) } // Storage component that includes all storage-related scripts templ StorageScripts() { @storageHandle.Once() { } } // Public components for storage operations templ SetLocalStorageItem(key string, value any) { @StorageScripts() } templ SetSessionStorageItem(key string, value any) { @StorageScripts() }