Repository navigation
Streaming widget: light-theme parity and button/primitive alignment (#255) - #256
Conversation
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.
…Button, refresh screenshots (#255) Co-authored-by: blueogin <43612769+blueogin@users.noreply.github.com>
QA report: Streaming widget full exploratory sweep (#263)Linked PR: #256
Storybook fixtures only. No live wallet or transactions used. Case resultsResults: Pass / Fail / Blocked / Not run Connection / navigation
Streams list
Create / update / cancel stream
Pools
Balances
Theme / layout
Known open items from #256
FindingsFIND-01: Switch to Base button overflows the Unsupported network card
FIND-02: Outlined buttons lose their label in hover / pressed states
FIND-03: Light-theme contrast below WCAG AA (shared preset, do not fix here)
Exploratory notes
VerdictHold for the tested Storybook scope. Remaining gaps: Live transactions and pool refresh after a real receipt (K-03) are not verified by Storybook. No cases Blocked; K-03 is the only Not run. |
|
@copilot please pick up the UI fixes:
Add focused regression tests for both fixes in light and dark themes, and verify the mobile layout and interactive button states. Please keep this task limited to these two UI fixes. |
…ry button labels readable in interactive states Co-authored-by: L03TJ3 <6606028+L03TJ3@users.noreply.github.com>
Both UI fixes are in 516284a.
I added two Playwright tests that run in both light and dark:
Both tests fail without the fix: the button overflows (right edge at 395px, card ends at 338px) and the hover contrast is 1:1. With the fix the full streaming suite passes 38/38. The new screenshots are At rest, the outlined labels in light theme are still about 2.3:1. That colour comes from the shared |
|
@Khemmie-Ray Thanks QA reported accepted.
So you can go ahead into the gardens pool and request your payment. The instructions for payments are at the bottom of the page. Make sure to use a verified G$ wallet. |
…goodbounty-patch-streaming-widget-light-theme
|
Tests failing due to some timeout in claim widget. needs follow up, but merging this PR as not related to the streaming widget |





@goodwidget/streaming-widgetwas effectively dark-only in Storybook (#254). It also routed every button through a localActionButtonthat hardcodedminWidth={100}, outside thecompactButtonPropsconvention the other widgets use. This PR aligns the widget with that convention, adds light/dark parity to the stories, and runs every Playwright flow in both themes.Related: #26, #36, #254
Widget (
packages/streaming-widget)ActionButtonwrapper. All 22 call sites now renderButtondirectly.compactButtonPropsincomponents/shared.tsx, mirroring ai-credits and superfluid-campaign, and spread it on everysize="sm"button:fullWidthat the default size, as in governance and citizen-claim:WalletGate)SetStreamForm)SetStreamForm, Reset moved below the CTA as a compact full-width secondary button, replacing the shared row.Badge,Separator,Spinner,Input,Select,TokenAmount,AddressDisplayandWidgetTabsall come from@goodwidget/ui.Storybook
StoryShellinhelpers/streamingWidgetStories.tsxnow passes the widget'sdefaultThemeto its outerGoodWidgetProvider. Previously that provider was always dark, so light renders sat inside a dark frame. The extra light provider wrapped aroundLightThemePopulatedStoryis removed as redundant.StreamingWidgetThemeOverrides.stories.tsx), followingGovernanceWidgetThemeOverrides.stories.tsx:light_*anddark_*key forButton,StreamRowandBalanceCard.defaultThemeradio control.defaultTheme="dark"and thewithDefaultPresetdecorator.StreamingWidget.stories.tsxis nowStreamingWidgetShowcase.stories.tsx. The MDX import is updated; the story ID is unchanged.Playwright (
tests/widgets/streaming-widget/states.spec.ts)args=defaultTheme:<theme>.light_*anddark_*keys.test-results/{dark,light}/, and the old untagged screenshots are removed.Open items for review
Light-theme button contrast:
light_Buttonis about 2.4:1.$primarysecondary text on the light background is about 2.3:1.Both come from the shared
light_Buttonpreset inpackages/ui, which GovernanceWidget uses as well. Changingpackages/uiis out of scope, so this needs a separate follow-up.SUP Reserve off Base: the reserve card still renders its data instead of being hidden or disabled. Changing that is data-layer behaviour ([GoodBounty] Finalize Streaming Widget PR #36) and out of scope.
Pool refresh after receipt: not covered by Storybook fixtures; it needs a live wallet.
Functional validation (Storybook QA fixtures)
sw-05,sw-07sw-08–sw-11,sw-28–sw-30sw-07sw-12,sw-23sw-13–sw-15(refresh after receipt not covered)sw-02,sw-04,sw-16sw-16,sw-06sw-17(reserve still shown, #36)sw-22,sw-26,sw-27sw-01,sw-03sw-18,sw-19