-
Notifications
You must be signed in to change notification settings - Fork 0
[CORRUPTED] Synthetic Benchmark PR #5874 - Updated empty states across settings #88
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
base: base_pr_5874_20251204_6218
Are you sure you want to change the base?
[CORRUPTED] Synthetic Benchmark PR #5874 - Updated empty states across settings #88
Conversation
- Add show_content? attribute to generic tile component - Ensure content is hidden when toggled off - Avoid rendering border and empty space when toggled off - Fix formatting
- Update the settings live views to use the new tile component - Ensure tile component is updated when feature visibility is toggled - Extract `no_search_results` and `empty_state` components for better readability - Extract `highlighted` component - Update tests
- Hide top bar on `/sites` when empty state is shown - Extract empty state logic to a separate function - Show the same empty state for both personal and team sites, with different copy - extract search logic to a separate function - add tests for various empty states cases
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||
User description
Benchmark PR plausible#5874
Type: Corrupted (contains bugs)
Original PR Title: Updated empty states across settings
Original PR Description: ### Changes
Tests
Dark mode
Original PR URL: Updated empty states across settings plausible/analytics#5874
PR Type
Enhancement, Tests
Description
Comprehensive redesign of empty states across settings pages with centered card layouts, improved messaging, and call-to-action buttons
Enhanced empty state UX for sites listing, shields (IP rules, hostname rules, page rules, country rules), imports/exports, shared links, goals, properties, funnels, and API keys
Refactored component parameter passing from
current_roletocurrent_userfor better context awareness in billing and feature gating componentsAdded new feature toggle live component (
toggle_live.ex) for dashboard toggle functionalityImplemented conditional subtitle visibility - subtitles now only display when content exists
Updated empty state messaging to be more action-oriented (e.g., "Create your first goal" instead of "No goals configured")
Added
searching?logic to distinguish between empty states and no search results scenariosWrapped settings components in
.tilecontainers with feature toggle and gating supportRemoved deprecated
site_roleattribute and replaced withcurrent_userparameter throughoutUpdated all related test files to match new empty state messages and parameter structures
Simplified template structure by moving tile wrappers from templates into LiveView components
Diagram Walkthrough
File Walkthrough
12 files
site_controller_test.exs
Enhanced empty state test coverage and messagingtest/plausible_web/controllers/site_controller_test.exs
(personal sites, team sites, search results)
personal site", "Add your first team site")
to "Try a different search term"
pattern
props_settings_test.exs
Updated props settings tests for new empty statestest/plausible_web/live/props_settings_test.exs
property"
visibility
notice_test.exs
Updated billing notice tests for user parametertest/plausible_web/components/billing/notice_test.exs
current_roletocurrent_userin all test casesgoal_settings_test.exs
Updated goal settings tests for new messagingtest/plausible_web/live/goal_settings_test.exs
goal"
billing_test.exs
Updated billing component tests for user parametertest/plausible_web/components/billing/billing_test.exs
current_roletocurrent_userin all test casesfunnel_settings_test.exs
Updated funnel settings teststest/plausible_web/live/funnel_settings_test.exs
setup_funnelsinstead ofsetup_goalsgoals"
sites_test.exs
Updated sites test assertions for new messagingtest/plausible_web/live/sites_test.exs
personal site"
hostnames_test.exs
Updated hostname shields test assertionstest/plausible_web/live/shields/hostnames_test.exs
ip_addresses_test.exs
Updated IP addresses shields test assertiontest/plausible_web/live/shields/ip_addresses_test.exs
address"
countries_test.exs
Updated countries shields test assertiontest/plausible_web/live/shields/countries_test.exs
pages_test.exs
Updated pages shields test assertiontest/plausible_web/live/shields/pages_test.exs
shared_link_settings_test.exs
Updated shared link settings test assertiontest/plausible_web/live/shared_link_settings_test.exs
shared link"
29 files
imports_exports_settings.ex
Redesigned imports/exports empty state UIlib/plausible_web/live/imports_exports_settings.ex
presence
your first data"
ip_rules.ex
Refactored IP rules empty state presentationlib/plausible_web/live/shields/ip_rules.ex
IP address"
hostname_rules.ex
Redesigned hostname rules empty state layoutlib/plausible_web/live/shields/hostname_rules.ex
page_rules.ex
Updated page rules empty state designlib/plausible_web/live/shields/page_rules.ex
a page"
sites.ex
Implemented enhanced empty state for sites listinglib/plausible_web/live/sites.ex
setup
is_empty_state?,empty_state_title, andempty_state_descriptionassignstitle, description, and CTAs
viewing team context
shared_link_settings.ex
Refactored shared links settings with tile wrapperlib/plausible_web/live/shared_link_settings.ex
.tilecomponent with feature gating"Create your first shared link"
country_rules.ex
Enhanced country rules empty state presentationlib/plausible_web/live/shields/country_rules.ex
goal_settings.ex
Refactored goal settings with tile wrapperlib/plausible_web/live/goal_settings.ex
site_roleassignment logic.tilewith feature toggle and gatingfunnel_settings.ex
Enhanced funnel settings with tile wrapperextra/lib/plausible_web/live/funnel_settings.ex
.tilewith feature toggle and gatinglist.ex
Refactored goal list with improved empty stateslib/plausible_web/live/goal_settings/list.ex
searching?assign based on filter textempty_stateandno_search_resultshelper functionsfirst goal"
list.ex
Refactored props list with enhanced empty stateslib/plausible_web/live/props_settings/list.ex
searching?assign based on filter textempty_stateandno_search_resultshelper functionsa custom property"
list.ex
Enhanced funnel list with improved empty statesextra/lib/plausible_web/live/funnel_settings/list.ex
searching?assign based on filter textempty_stateandno_search_resultshelper functionsyour first funnel"
form.ex
Updated goal form to use current_user parameterlib/plausible_web/live/goal_settings/form.ex
site_roleattribute and replaced withcurrent_usercurrent_userinstead ofsite_rolecurrent_userparametergeneric.ex
Updated generic components for user-based parameterslib/plausible_web/components/generic.ex
current_roleattribute withcurrent_usershow_content?boolean attribute for conditional content displayhighlightedhelper component for styled text emphasistoggle_live.ex
Added new feature toggle live componentlib/plausible_web/components/site/toggle_live.ex
billing.ex
Refactored billing component for user-based parameterslib/plausible_web/components/billing/billing.ex
current_roleattribute withcurrent_usersiteattribute for site-specific role determinationupgrade_call_to_actionto derive role from user and team/sitecontext
props_settings.ex
Enhanced props settings with tile wrapperlib/plausible_web/live/props_settings.ex
.tilewith feature toggle and gatingsettings.ex
Redesigned plugin tokens empty state UIlib/plausible_web/live/plugins/api/settings.ex
token"
notice.ex
Updated notice component for user parameterlib/plausible_web/components/billing/notice.ex
current_roleattribute tocurrent_usercurrent_userto upgrade call to actionteam_setup.ex
Updated team setup for user parameterlib/plausible_web/live/team_setup.ex
current_roletocurrent_userteam_management.ex
Updated team management for user parameterlib/plausible_web/live/team_management.ex
current_roletocurrent_userapi_keys.html.heex
Redesigned API keys empty state UIlib/plausible_web/templates/settings/api_keys.html.heex
"Create your first API key"
settings_visibility.html.heex
Refactored shared links template structurelib/plausible_web/templates/site/settings_visibility.html.heex
current_userinstead ofcurrent_rolesettings_goals.html.heex
Simplified goals settings templatelib/plausible_web/templates/site/settings_goals.html.heex
settings_imports_exports.html.heex
Simplified imports/exports template structurelib/plausible_web/templates/site/settings_imports_exports.html.heex
settings_props.html.heex
Simplified props settings templatelib/plausible_web/templates/site/settings_props.html.heex
invite_member_form.html.heex
Updated invite member form for user parameterlib/plausible_web/templates/site/membership/invite_member_form.html.heex
current_roletocurrent_usersettings_funnels.html.heex
Simplified funnels settings templatelib/plausible_web/templates/site/settings_funnels.html.heex
settings_integrations.html.heex
Updated integrations template subtitle visibilitylib/plausible_web/templates/site/settings_integrations.html.heex
6 files