gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] 02/04: memory key should be string


From: gnunet
Subject: [taler-wallet-core] 02/04: memory key should be string
Date: Fri, 02 Jun 2023 19:26:46 +0200

This is an automated email from the git hooks/post-receive script.

sebasjm pushed a commit to branch master
in repository wallet-core.

commit e3ec395b35b8fcff9a6423bb118f14c9649ddcd8
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Fri Jun 2 14:11:57 2023 -0300

    memory key should be string
---
 .../exchange-backoffice-ui/src/hooks/useOfficer.ts   |  4 ++--
 packages/web-util/src/hooks/useMemoryStorage.ts      | 20 ++++++++++----------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/packages/exchange-backoffice-ui/src/hooks/useOfficer.ts 
b/packages/exchange-backoffice-ui/src/hooks/useOfficer.ts
index 2ed375846..4ec43569b 100644
--- a/packages/exchange-backoffice-ui/src/hooks/useOfficer.ts
+++ b/packages/exchange-backoffice-ui/src/hooks/useOfficer.ts
@@ -49,10 +49,10 @@ interface OfficerReady {
 }
 
 const OFFICER_KEY = buildStorageKey("officer", codecForOfficer());
-const ACCOUNT_KEY = buildStorageKey<Account>("account");
+const ACCOUNT_KEY = "account";
 
 export function useOfficer(): OfficerState {
-  const accountStorage = useMemoryStorage(ACCOUNT_KEY);
+  const accountStorage = useMemoryStorage<Account>(ACCOUNT_KEY);
   const officerStorage = useLocalStorage(OFFICER_KEY);
 
   const officer = officerStorage.value;
diff --git a/packages/web-util/src/hooks/useMemoryStorage.ts 
b/packages/web-util/src/hooks/useMemoryStorage.ts
index d8be24c1e..1dd263797 100644
--- a/packages/web-util/src/hooks/useMemoryStorage.ts
+++ b/packages/web-util/src/hooks/useMemoryStorage.ts
@@ -27,37 +27,37 @@ const storage: ObservableMap<string, any> = 
memoryMap<any>();
 
 //with initial value
 export function useMemoryStorage<Type = string>(
-  key: StorageKey<Type>,
+  key: string,
   defaultValue: Type,
 ): Required<StorageState<Type>>;
 //with initial value
 export function useMemoryStorage<Type = string>(
-  key: StorageKey<Type>,
+  key: string,
 ): StorageState<Type>;
 // impl
 export function useMemoryStorage<Type = string>(
-  key: StorageKey<Type>,
+  key: string,
   defaultValue?: Type,
 ): StorageState<Type> {
   const [storedValue, setStoredValue] = useState<Type | undefined>(
     (): Type | undefined => {
-      const prev = storage.get(key.id);
-      return prev;
+      const prev = storage.get(key);
+      return prev === undefined ? defaultValue : prev;
     },
   );
 
   useEffect(() => {
-    return storage.onUpdate(key.id, () => {
-      const newValue = storage.get(key.id);
-      setStoredValue(newValue);
+    return storage.onUpdate(key, () => {
+      const newValue = storage.get(key);
+      setStoredValue(newValue === undefined ? defaultValue : newValue);
     });
   }, []);
 
   const setValue = (value?: Type): void => {
     if (value === undefined) {
-      storage.delete(key.id);
+      storage.delete(key);
     } else {
-      storage.set(key.id, value);
+      storage.set(key, value);
     }
   };
 

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]