feat(stats): "custom only" checkbox on the symbols bubble chart - #34
Merged
Conversation
Filters the stats-page symbol chart down to the user's own creations so they get the room — title left, checkbox right on the same line, the sleep chart's "smooth" header pattern. Purely client-side: the aggregated chart data now carries each symbol's builtIn flag, so no new query or refetch; state persists in sessionStorage like the other stats toggles. The PDF export keeps rendering the full set with no checkbox. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds a "custom only" checkbox to the symbols bubble chart on the Stats page — title left, checkbox right-aligned on the same line (the sleep chart's "smooth" header pattern). Checking it hides the opted-in built-in symbols so the user's own creations get the room, matching the Symbols page's checkbox semantics.
How
getDreamsalready ships each dream's full symbol rows to the client andsetChartsDataaggregates there — the entries now carry each symbol'sbuiltInflag, andStatSymbolChartfilters on it locally ("custom" =!builtIn; a symbol attached to your own dream is either an opted-in built-in or your own creation).sessionStoragelike the other stats toggles (new key inrange.ts).StatSymbolChart: the Filters panel, range buttons, and the other facet charts are untouched; the advanced-charting view gets the checkbox automatically since it renders the same component; the PDF export (isPdf) keeps rendering the full set with no checkbox.Testing
builtInpassthrough inchartsData.test.ts; existing by-id test loosened toobjectContaining.npm test(129 passing),npm run type:check, eslint all green.🤖 Generated with Claude Code