New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: welcome tour ending on page refresh #16079
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
/ok-to-test sha=ca9f077 |
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/2876180813. |
/ok-to-test sha=c606b61 |
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/2880017916. |
UI Performance test run logs and artifacts: https://github.com/appsmithorg/appsmith/actions/runs/2880017916. Click to view performance test results
|
app/client/cypress/integration/Smoke_TestSuite/ClientSideTests/Onboarding/GuidedTour_spec.js
Show resolved
Hide resolved
@@ -16,23 +16,41 @@ class LocalStorageNotSupportedError extends Error { | |||
} | |||
} | |||
|
|||
export const getLocalStorage = () => { | |||
const storage = window.localStorage; | |||
type WebStorageType = "local" | "session"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we create a new WebStorage or Session storage class instead? Lets not combine these.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Created two classes LocalStorage and SessionStorage which extends WebStorage as both local and session storage have the same api. https://github.com/appsmithorg/appsmith/pull/16079/files#diff-1e9a43b2c64f5b85db74f40be876df6d9ab7e63b4660387f7330978f050b6d4bR111
/ok-to-test sha=fd6c6ca |
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/2919016127. |
UI Performance test run logs and artifacts: https://github.com/appsmithorg/appsmith/actions/runs/2919016127. Click to view performance test results
|
/ok-to-test sha=62d40d1 |
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/2925444224. |
UI Performance test run logs and artifacts: https://github.com/appsmithorg/appsmith/actions/runs/2925444224. Click to view performance test results
|
/ok-to-test sha=8567a37 |
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/2977834107. |
UI Performance test run logs and artifacts: https://github.com/appsmithorg/appsmith/actions/runs/2977834107. Click to view performance test results
|
Description
We want to still have the guided tour running when the current page is refreshed. Note that we don't restore at the initial screen where we show the start building cta. Also we don't restore all states like for e.g focused inputs, if the widget sidebar was open we don't reopen it on refresh etc. but the tour continues to be usable. We also go back a few steps in cases where we cannot resume with the latest step on refresh.
Code changes
Release
release-reload.mov
Post fix
load-from-storage.mov
Fixes #10923
Type of change
How Has This Been Tested?
Cypress
Checklist: