Skip to content
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

chore: Plan based access UI #4281

Merged
merged 29 commits into from
Aug 14, 2024
Merged

chore: Plan based access UI #4281

merged 29 commits into from
Aug 14, 2024

Conversation

kyle-ssg
Copy link
Member

@kyle-ssg kyle-ssg commented Jul 3, 2024

Thanks for submitting a PR! Please check the boxes below:

  • I have run pre-commit to check linting
  • I have added information to docs/ if required so people know about the feature!
  • I have filled in the "Changes" section below?
  • I have filled in the "How did you test this code" section below?
  • I have used a Conventional Commit title for this Pull Request

Changes

  • Adds a consistent approach to plan based access by adding the following components

    • Plan based banner
    • Plan based page
    • Plan based setting
    • Plan based select option
  • Adds a central location for paid features, their plan and their description

  • Adds a consistent UX based on whether the app is running as SaaS or self-hosted
    image

  • Adds a video preview to some features, accessible via hovering the feature or on the page depending on the UI.

image

Testing

Testing, as free self hosted or saas view the following features

  • 2FA
    image

  • Change Requests

image
image

  • Audit Log
    image

  • Create 2nd project
    image

  • Flag owners
    image

  • RBAC
    image
    image
    image

  • Stale flag detection
    image

  • Realtime
    image

  • Versioning
    image

@kyle-ssg kyle-ssg requested a review from a team as a code owner July 3, 2024 19:44
@kyle-ssg kyle-ssg requested review from novakzaballa and removed request for a team July 3, 2024 19:44
Copy link

vercel bot commented Jul 3, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 14, 2024 10:45am
flagsmith-frontend-preview ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 14, 2024 10:45am
flagsmith-frontend-staging ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 14, 2024 10:45am

@github-actions github-actions bot added front-end Issue related to the React Front End Dashboard chore labels Jul 3, 2024
@github-actions github-actions bot added chore and removed chore labels Jul 3, 2024
Copy link
Contributor

github-actions bot commented Jul 3, 2024

Uffizzi Preview deployment-53816 was deleted.

@kyle-ssg
Copy link
Member Author

kyle-ssg commented Jul 31, 2024

The code looks good, but the multi-factor authentication feature doesn't show a banner when I'm on a free plan.

Screen.Recording.2024-07-11.at.12.01.46.PM.mov

Actually, I believe it does but this feature acts differently to others in that it's not organisation specific. If any of your orgs are paid it unlocks it.

image

Also, I've just added this for custom fields.

image

@rolodato
Copy link
Member

Thanks for the updates! What I meant about SAML is that we're currently hiding the SAML tab entirely from non-Enterprise orgs here:

Utils.getPlanPermission(
organisation.subscription?.plan,
'SAML',
) && Utils.getFlagsmithHasFeature('saml_configuration')

For example, a free self-hosted org sees this:
image

Instead of hiding the SAML tab, we could always show it to all users, but disable the contents of the SAML page depending on the org's plan, in the same way we're disabling features per plan instead of hiding them in this PR.

@kyle-ssg
Copy link
Member Author

kyle-ssg commented Aug 7, 2024

Ah good catch thanks, added here @rolodato

image

@rolodato
Copy link
Member

There's a UI bug here - "Admin Settings" is meant to be a heading, but looks like a toggle switch:

image

This is what is used to look like:

image

I would also remove the saml_configuration flag check here, and later delete the flag entirely: https://github.com/Flagsmith/flagsmith/pull/4281/files#diff-670d08164663d0cb284ac1560669dc5f1af2a21b11e0e76178ca0186bbf4bf75R237

We are already recommending all of our customers use this UI section in our docs: https://docs.flagsmith.com/system-administration/authentication/SAML/. Adding another step for self-hosting customers (set up a Flagsmith-on-Flagsmith project and enable this flag) is unnecessary and reduces exposure to this functionality for free self-hosted customers.

@kyle-ssg
Copy link
Member Author

@rolodato adjusted

Copy link
Member

@rolodato rolodato left a comment

Choose a reason for hiding this comment

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

Great stuff!

@kyle-ssg kyle-ssg added this pull request to the merge queue Aug 14, 2024
Merged via the queue into main with commit 6ba44f8 Aug 14, 2024
31 checks passed
@kyle-ssg kyle-ssg deleted the chore/plan-based-access-ui branch August 14, 2024 20:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore front-end Issue related to the React Front End Dashboard
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add more relevant links out to closed source features in our open source version
3 participants