use ruffle_core::backend::storage::StorageBackend; use web_sys::Storage; pub struct LocalStorageBackend { storage: Storage, } impl LocalStorageBackend { pub(crate) fn new(storage: Storage) -> Self { LocalStorageBackend { storage } } } impl StorageBackend for LocalStorageBackend { fn get_string(&self, name: &str) -> Option { self.storage.get(name).unwrap_or_default() } fn put_string(&mut self, name: &str, value: String) -> bool { self.storage.set(name, &value).is_ok() } fn remove_key(&mut self, name: &str) { let _ = self.storage.delete(name); } }