Skip to content

Commit

Permalink
added issuer keys data to selected-tokens event.
Browse files Browse the repository at this point in the history
  • Loading branch information
Nick Taras authored and Nick Taras committed Oct 11, 2023
1 parent 4dbba5e commit 8d00966
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 17 deletions.
5 changes: 3 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
> Description
Feature release including multi-hook support and improved UX for off chain token holders.
Feature release including multi-hook support, improved UX for off chain token holders and minor general improvements.

### Upgrade Steps

Expand All @@ -17,10 +17,11 @@ Feature release including multi-hook support and improved UX for off chain token
- Re-direct view state UX improvements for 'active' mode
- Re-direct accept / deny options given to end user (to cancel the loading of tokens)
- Multi-Hook support added
- Added selected token issuer keys to 'tokens-selected' event hook

### Bug Fixes

- TS interface custom views
- TS interface custom view

### Performance Improvements

Expand Down
27 changes: 12 additions & 15 deletions src/client/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -472,14 +472,17 @@ export class Client {
autoOpenPopup = true
}

if (this.config.autoEnableTokens && Object.keys(this.tokenStore.getSelectedTokens()).length)
this.eventSender('tokens-selected', {
selectedTokens: this.tokenStore.getSelectedTokens(),
})

if (this.config.autoEnableTokens && Object.keys(this.tokenStore.getSelectedTokens()).length) this.tokensSelectedCallBackHandler()
if (openPopup || (this.config.uiOptions.autoPopup === true && autoOpenPopup)) this.ui.openOverlay()
}

private tokensSelectedCallBackHandler = () => {
this.eventSender('tokens-selected', {
selectedTokens: this.tokenStore.getSelectedTokens(),
selectedTokenKeys: Object.keys(this.tokenStore.getSelectedTokens()),
})
}

private cancelAutoload = true

async tokenAutoLoad(onLoading: (issuer: string) => void, onComplete: (issuer: string, tokens: any[]) => void, refresh: boolean) {
Expand Down Expand Up @@ -668,12 +671,8 @@ export class Client {
logger(2, 'Emit tokens')
logger(2, tokens)

for (let issuer in tokens) {
tokens[issuer] = { tokens: tokens[issuer] }
}

this.eventSender('tokens-selected', { selectedTokens: tokens })
this.eventSender('tokens-loaded', { loadedCollections: Object.keys(tokens).length })
this.tokensSelectedCallBackHandler()
this.eventSender('tokens-loaded', { loadedCollections: Object.keys(this.tokenStore.getCurrentTokens()).length })

// Feature not supported when an end users third party cookies are disabled
// because the use of a tab requires a user gesture.
Expand All @@ -696,9 +695,7 @@ export class Client {
}

if (this.config.autoEnableTokens) {
this.eventSender('tokens-selected', {
selectedTokens: this.tokenStore.getSelectedTokens(),
})
this.tokensSelectedCallBackHandler()
}

return tokens
Expand Down Expand Up @@ -809,7 +806,7 @@ export class Client {

updateSelectedTokens(selectedTokens) {
this.tokenStore.setSelectedTokens(selectedTokens)
this.eventSender('tokens-selected', { selectedTokens })
this.tokensSelectedCallBackHandler()
}

async prepareToAuthenticateToken(authRequest: AuthenticateInterface) {
Expand Down

0 comments on commit 8d00966

Please sign in to comment.