Make header CTA button purple - #26
Closed
davidrsch wants to merge 1 commit into
Closed
Conversation
Add a `purple` branding color to config.yml and point the header's `.cta-button` background at `var(--purple)` instead of `var(--primary)`, so only the Header component changes. Rebuild the committed app/static/css/app.min.css rule to match.
Author
Summary3 files, +3/-2. Verified independently against
FindingsMinor
Nit
Questions for the requester
VerdictAPPROVE (with minor comments) No blockers, no majors. The change is minimal, resolves correctly at runtime, is contained to the requested component, breaks no test, and touches nothing security-sensitive. The two minors are judgement calls, and the questions are about intent rather than defects — none of them need a revision pass unless the answer to Q1 or Q2 changes the target. |
Author
|
A hackatho test |
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 changed
The Header component's primary button (
.cta-button, the "Let's Talk" CTA inapp/view/mod_header.R) is now purple instead of the app's primary blue.config.yml— added apurple: "#7c3aed"entry tobranding.colors. All colors in this app are config-driven and surfaced as CSS custom properties bygenerate_css_variables()inapp/logic/general_utils.R, so this follows the existing convention rather than hardcoding a hex (or a named color, which Sass linting would flag) in the stylesheet.app/styles/_header.scss—.header .right .cta-buttonbackground changed fromvar(--primary)tovar(--purple).app/static/css/app.min.css— the committed build artifact is what the app actually serves, so the corresponding rule was updated to match.Why this shape
The request was scoped to the Header component, so
--primaryitself was deliberately left untouched: it is still used byapp/styles/_logs.scssand by the empty-state illustrations inapp/main.R, none of which should change..cta-buttonis used only by the Header module (verified —app/styles/_header.scssandapp/view/mod_header.Rare the only references), so the blast radius is exactly the header button.How it was tested
app/styles/main.scsswith dart-sass (--style=compressed) and diffed the output against the pre-change compile: the single change isvar(--primary)→var(--purple)inside the.header .right .cta-buttonrule, with no other rules affected.app/static/css/app.min.csswas hand-patched to that exact value rather than regenerated wholesale, because the locally available sass version emits cosmetically different output (e.g.white→#fff,@importspacing) and a full rebuild would have buried a one-token change in unrelated churn. CI runsrhino::build_sass()itself, so it will regenerate the artifact from the SCSS in any case.config.ymlstill parses and thatbranding.colorsresolves withpurple: #7c3aedalongside an unchangedprimary: #0099f9.rhino::test_r()/rhino::lint_sass()/ Cypress were not run: the renv packages recorded inrenv.lock(includingrhinoandtestthat) are not installed in this environment, and the Cypress suite needs a running app with Posit Connect access. No R or JS code changed, so the R unit tests are unaffected. No test was added — the repo has no styling assertions (tests/cypress/e2e/app.cy.jsonly checks that the app starts), and adding an e2e assertion that could not be run here risked landing a red test in this repo.🤖 Opened by the shinybot-bridge mediforce workflow, on behalf of a shinybot chat request.