Skip to content

Commit

Permalink
fix: Clearing token refresh interval on unmount (#22)
Browse files Browse the repository at this point in the history
* Clearing token refresh interval on unmount

* Bumping node version
  • Loading branch information
craig-rueda authored Mar 25, 2024
1 parent 930fc69 commit f890e38
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 20 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/embedded-sdk-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: "16"
node-version: "18"
registry-url: 'https://registry.npmjs.org'
- name: release
run: |
Expand Down
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 f890e38

Please sign in to comment.