Skip to content

Commit

Permalink
Clearing token refresh interval on unmount
Browse files Browse the repository at this point in the history
  • Loading branch information
craig-rueda committed Mar 25, 2024
1 parent 930fc69 commit a82a0a3
Show file tree
Hide file tree
Showing 4 changed files with 65 additions and 19 deletions.
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
18.19.1
73 changes: 58 additions & 15 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@preset-sdk/embedded",
"version": "0.1.9",
"version": "0.1.10",
"description": "Frontend SDK for embedding Preset data analytics into your own application",
"access": "public",
"keywords": [
Expand Down Expand Up @@ -43,7 +43,7 @@
"@babel/preset-env": "^7.16.11",
"@babel/preset-typescript": "^7.16.7",
"@types/jest": "^27.4.1",
"axios": "^0.25.0",
"axios": "^1.6.8",
"babel-loader": "^8.2.3",
"jest": "^27.5.1",
"typescript": "^4.5.5",
Expand Down
6 changes: 4 additions & 2 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -131,21 +131,23 @@ export async function embedDashboard({
fetchGuestToken(),
mountIframe(),
]);
let refreshGuestTokenInterval: number | undefined;

ourPort.emit('guestToken', { guestToken });
log('sent guest token');

async function refreshGuestToken() {
const newGuestToken = await fetchGuestToken();
ourPort.emit('guestToken', { guestToken: newGuestToken });
setTimeout(refreshGuestToken, getGuestTokenRefreshTiming(newGuestToken));
refreshGuestTokenInterval = setTimeout(refreshGuestToken, getGuestTokenRefreshTiming(newGuestToken));
}

setTimeout(refreshGuestToken, getGuestTokenRefreshTiming(guestToken));
refreshGuestTokenInterval = setTimeout(refreshGuestToken, getGuestTokenRefreshTiming(guestToken));

function unmount() {
log('unmounting');
mountPoint?.replaceChildren();
clearTimeout(refreshGuestTokenInterval);
}

const getScrollSize = () => ourPort.get<Size>('getScrollSize');
Expand Down

0 comments on commit a82a0a3

Please sign in to comment.