Remove useEffect that watched stepIndex to drive shouldAnimate/contentKey.
stepIndex only changes from handleNext/handlePrev, so set shouldAnimate
directly in those handlers. Replace contentKey state (always equal to
stepIndex) with stepIndex as the animation key.
Fixes#1017
- Removed the `documentTypeCountsAtom` and its associated logic from the document query atoms.
- Introduced `useZeroDocumentTypeCounts` hook to provide real-time document type counts, enhancing responsiveness as documents are indexed.
- Updated components to utilize the new hook for fetching document type counts, ensuring instant updates in the UI.
- Add cancelled flag to prevent state updates after unmount in
checkAndStartTour retry loop
- Store retry timer ID in a ref and clear it on cleanup in
updateTarget effect
Closes#950
- Added a new joyride step for the upload button to guide users in uploading documents.
- Updated existing tour steps to reflect changes in document management and tool configuration.
- Adjusted tooltip styles for improved visibility and user experience.
- Enhanced MorePagesContent button styling for better interaction feedback.
- Added a new onboarding tour step for the inbox, guiding users to view mentions and notifications.
- Updated tooltip positioning logic to accommodate the new inbox step, ensuring proper alignment during the tour.
- Enhanced the check for required elements to include the inbox step, improving the tour initiation process.
- Added logic to track previous user ID to detect changes and reset tour state accordingly.
- Updated localStorage checks to ensure the onboarding tour is displayed only for new users who haven't seen it.
- Improved validation logic to prevent auto-marking the tour as seen if the user has existing data.
- Integrated user data fetching and validation to determine if the onboarding tour should be displayed.
- Improved checks for user status by evaluating threads, documents, and connectors to identify new users.
- Added localStorage management to track whether users have completed or skipped the tour.
- Refactored the tour initiation logic to ensure it only runs when all necessary data is loaded and available.
- Updated tooltip and spotlight styles for improved visibility and animation.
- Adjusted background and text colors based on dark mode settings for better user experience.
- Introduced animation for tooltip content changes to enhance user engagement.
- Refactored rendering logic to ensure spotlight updates sync with tooltip animations.
- Updated onboarding tour messages to include Gmail and Drive for better clarity.
- Refactored Spotlight component to enhance element targeting and prevent flickering.
- Optimized rendering logic for Spotlight and TourTooltip to ensure they only display when target data is available.
- Introduced the OnboardingTour component to guide users through key features.
- Integrated the OnboardingTour into the DashboardClientLayout for improved user experience.
- Updated connector popup and sidebar navigation with data attributes for tour steps.