diff options
| author | Florian Dold <florian@dold.me> | 2023-08-30 16:08:51 +0200 | 
|---|---|---|
| committer | Florian Dold <florian@dold.me> | 2023-08-30 16:08:51 +0200 | 
| commit | 53613a137df432878d62317e685bd1737dc6a6dc (patch) | |
| tree | 5d170f5f07ce7f59075fa3595b40af8d68161b46 /packages | |
| parent | d19aef746c1e67deaccc7c8cefba008f2f0d46ca (diff) | |
-only store key if necessary
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/taler-wallet-core/src/db.ts | 15 | 
1 files changed, 11 insertions, 4 deletions
| diff --git a/packages/taler-wallet-core/src/db.ts b/packages/taler-wallet-core/src/db.ts index 2dbf5dade..ba5295dda 100644 --- a/packages/taler-wallet-core/src/db.ts +++ b/packages/taler-wallet-core/src/db.ts @@ -2772,8 +2772,10 @@ export const walletMetadataStore = {  export interface DbDumpRecord {    /**     * Key, serialized with structuredEncapsulated. +   * +   * Only present for out-of-line keys (i.e. no key path).     */ -  key: any; +  key?: any;    /**     * Value, serialized with structuredEncapsulated.     */ @@ -2844,10 +2846,15 @@ export function exportDb(db: IDBDatabase): Promise<DbDump> {        store.openCursor().addEventListener("success", (e: Event) => {          const cursor = (e.target as any).result;          if (cursor) { -          storeDump.records.push({ -            key: structuredEncapsulate(cursor.key), +          const rec: DbDumpRecord = {              value: structuredEncapsulate(cursor.value), -          }); +          }; +          // Only store key if necessary, i.e. when +          // the key is not stored as part of the object via +          // a key path. +          if (store.keyPath == null) { +            rec.key = structuredEncapsulate(cursor.key); +          }            cursor.continue();          }        }); | 
