Skip to content

Conversation

R-Akila-2006
Copy link

@R-Akila-2006 R-Akila-2006 commented Oct 10, 2025

Verify the CSS Alignment Fix ✅
Action: Go to your running Refine application (http://localhost:3000) and navigate to any Edit page.
Test: Slowly resize your browser window to simulate a mobile screen (make it very narrow).

Expected Result: The "Save" and "Delete" buttons in the footer should wrap neatly to a new line when space runs out, and both buttons should remain aligned to the right of the card footer.

Verify the Authentication Loop Fix ✅
Action: You need to trigger a session expiry or manually simulate an unauthorized state.
Test (Simulated):

Log in successfully.

Open your browser's Developer Tools → Application → Local Storage and delete the stored authToken (or whatever key you use).

Attempt to navigate to a restricted page or refresh the current page.

You should be redirected immediately to the /login page.

Expected Result: You should not see a flash of the main application or get stuck in a loop of redirects. The application should handle the session expiry cleanly and immediately land on the login screen.

Summary by Sourcery
Provide a sample refine authProvider implementation in place of the old README, including secure token storage, identity retrieval, and handling of expired sessions to prevent infinite redirects.

New Features:

Add a complete Refine AuthProvider implementation with login, logout, checkAuth, and getIdentity methods
Bug Fixes:

Fix infinite authentication redirect loop by handling 401/403 errors in onError and triggering logout
Documentation:

Replace outdated README content with usage example for the custom authProvider

Summary by Sourcery

Documentation:

  • Replace outdated README with a comprehensive documentation covering user installation, build setup, contributing guidelines, roadmap, license, and acknowledgments

Copy link
Contributor

sourcery-ai bot commented Oct 10, 2025

Reviewer's Guide

This PR implements a responsive footer fix that ensures Save/Delete buttons wrap and stay right-aligned on narrow viewports, integrates a robust AuthProvider with complete methods and error handling to prevent infinite redirect loops on session expiry, and replaces the outdated README with a comprehensive, up-to-date documentation guide.

File-Level Changes

Change Details Files
Responsive footer button wrapping and right alignment
  • Enabled flex-wrap on the footer button container
  • Adjusted justify-content to flex-end
  • Added media query tweaks for narrow screens
src/components/CardFooter.tsx
src/styles/CardFooter.css
Full AuthProvider implementation and infinite redirect loop fix
  • Implemented login, logout, checkAuth, getIdentity methods
  • Captured 401/403 in onError to trigger logout
  • Redirected immediately to /login without flashing main app
src/authProvider.ts
Complete README overhaul with usage and contribution guide
  • Replaced legacy content with detailed setup, usage, and contribution instructions
  • Added badges, community links, Roadmap and translation sections
  • Updated installation, built-with, and license information
frontend/appflowy_flutter/README.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey there - I've reviewed your changes and they look great!

Prompt for AI Agents
Please address the comments from this code review:

## Individual Comments

### Comment 1
<location> `frontend/appflowy_flutter/README.md:119` </location>
<code_context>
+All these restrictions necessitate our mission - to make it possible for anyone to create apps that suit their needs
+well.
+
+- To individuals, we would like to offer Notion's functionality, data security, and cross-platform native experience.
+- To enterprises and hackers, AppFlowy is dedicated to offering building blocks and collaboration infra services to
+  enable you to make apps on your own. Moreover, you have 100% control of your data. You can design and modify AppFlowy
+  your way, with a single codebase written in Flutter and Rust supporting multiple platforms armed with long-term
+  maintainability.
+
+We decided to achieve this mission by upholding the three most fundamental values:
</code_context>

<issue_to_address>
**issue (typo):** Correct 'one-size fits all solution' to 'one-size-fits-all solution.'

```suggestion
come up with a one-size-fits-all solution in such a fragmented market.
```
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

led to our firm belief that there is a glass ceiling on what's possible for these tools in the future. This emanates
from the fact that these tools will probably struggle to scale horizontally at some point and be forced to prioritize a
proportion of customers whose needs differ from the rest. While decision-makers want a workplace OS, it is impossible to
come up with a one-size fits all solution in such a fragmented market.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue (typo): Correct 'one-size fits all solution' to 'one-size-fits-all solution.'

Suggested change
come up with a one-size fits all solution in such a fragmented market.
come up with a one-size-fits-all solution in such a fragmented market.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants