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()
}