chore: allow setting custom icon to vault

This commit is contained in:
Aman Harwara
2023-08-08 19:00:04 +05:30
parent cd1b488769
commit f82974633b
14 changed files with 174 additions and 48 deletions

View File

@@ -8,6 +8,9 @@ import { VaultListingContent } from './VaultListingContent'
import { KeySystemRootKeyStorageMode } from '../KeySystemRootKey/KeySystemRootKeyStorageMode'
import { VaultListingSharingInfo } from './VaultListingSharingInfo'
import { KeySystemIdentifier } from '../KeySystemRootKey/KeySystemIdentifier'
import { EmojiString, IconType } from '../../Utilities/Icon/IconType'
export const DefaultVaultIconName: IconType = 'safe-square'
export class VaultListing extends DecryptedItem<VaultListingContent> implements VaultListingInterface {
systemIdentifier: KeySystemIdentifier
@@ -17,6 +20,7 @@ export class VaultListing extends DecryptedItem<VaultListingContent> implements
name: string
description?: string
iconString: IconType | EmojiString
sharing?: VaultListingSharingInfo
@@ -30,6 +34,7 @@ export class VaultListing extends DecryptedItem<VaultListingContent> implements
this.name = payload.content.name
this.description = payload.content.description
this.iconString = payload.content.iconString || DefaultVaultIconName
this.sharing = payload.content.sharing
}

View File

@@ -3,6 +3,7 @@ import { KeySystemIdentifier } from '../KeySystemRootKey/KeySystemIdentifier'
import { KeySystemRootKeyParamsInterface } from '../../Local/KeyParams/KeySystemRootKeyParamsInterface'
import { KeySystemRootKeyStorageMode } from '../KeySystemRootKey/KeySystemRootKeyStorageMode'
import { VaultListingSharingInfo } from './VaultListingSharingInfo'
import { EmojiString, IconType } from '../../Utilities/Icon/IconType'
export interface VaultListingContentSpecialized extends SpecializedContent {
systemIdentifier: KeySystemIdentifier
@@ -12,6 +13,7 @@ export interface VaultListingContentSpecialized extends SpecializedContent {
name: string
description?: string
iconString: IconType | EmojiString
sharing?: VaultListingSharingInfo
}

View File

@@ -5,6 +5,7 @@ import { KeySystemRootKeyStorageMode } from '../KeySystemRootKey/KeySystemRootKe
import { VaultListingSharingInfo } from './VaultListingSharingInfo'
import { VaultListingContent } from './VaultListingContent'
import { DecryptedItemInterface } from '../../Abstract/Item'
import { EmojiString, IconType } from '../../Utilities/Icon/IconType'
export interface VaultListingInterface extends DecryptedItemInterface<VaultListingContent> {
systemIdentifier: KeySystemIdentifier
@@ -14,6 +15,7 @@ export interface VaultListingInterface extends DecryptedItemInterface<VaultListi
name: string
description?: string
iconString: IconType | EmojiString
sharing?: VaultListingSharingInfo

View File

@@ -1,5 +1,6 @@
import { DecryptedItemMutator } from '../../Abstract/Item'
import { KeySystemRootKeyParamsInterface } from '../../Local/KeyParams/KeySystemRootKeyParamsInterface'
import { EmojiString, IconType } from '../../Utilities/Icon/IconType'
import { KeySystemRootKeyStorageMode } from '../KeySystemRootKey/KeySystemRootKeyStorageMode'
import { VaultListingContent } from './VaultListingContent'
import { VaultListingSharingInfo } from './VaultListingSharingInfo'
@@ -13,6 +14,10 @@ export class VaultListingMutator extends DecryptedItemMutator<VaultListingConten
this.mutableContent.description = description
}
set iconString(iconString: IconType | EmojiString) {
this.mutableContent.iconString = iconString
}
set sharing(sharing: VaultListingSharingInfo | undefined) {
this.mutableContent.sharing = sharing
}