-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
[MBL-1208] Part 4: Continue CTA Section #1980
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a few non-blocking suggestions.
|
||
private enum Layout { | ||
enum Button { | ||
static let minHeight: CGFloat = 48.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this not in our design system somewhere?
|
||
_ = self.continueButton | ||
|> greenButtonStyle | ||
|> UIButton.lens.title(for: .normal) %~ { _ in Strings.Continue() } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit/non-blocking: Mentioned this in an earlier PR but I'd prefer us to move away from Prelude code in bindStyles
whenever we can avoid it.
} | ||
} | ||
|
||
private func attributedCurrency(with project: Project, total: Double) -> NSAttributedString? { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Extremely teeny nit: This method name would be clearer if it was withProject:
instead of just with:
private func attributedCurrency(with project: Project, total: Double) -> NSAttributedString? { | ||
let defaultAttributes = checkoutCurrencyDefaultAttributes() | ||
.withAllValuesFrom([.foregroundColor: UIColor.ksr_support_700]) | ||
let projectCurrencyCountry = projectCountry(forCurrency: project.stats.currency) ?? project.country |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we expect this fall-through to ever have to happen? I wonder if we should just change the type of project.currency
to be a forced non-nil value, since it would be pretty odd if we didn't have that information from the server.
project, | ||
pledgeTotal | ||
) | ||
.map { project, total in (project, total) } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: this map is a no-op, I think.
📲 What
Adds the CTA section to the bottom of the screen.
Includes a continue button that will navigate to the final checkout screen and displays the current pledge total.
🤔 Why
We need a way to confirm pledge details.
🛠 How
creates a new
ConfirmDetailsContinueCTAView
and adds it toConfirmDetailsViewController
following the designs: https://www.figma.com/file/sFfDKxlJ2tiuq1xgIsaoiI/Late-Campaign-Backings?type=design&node-id=73-5025&mode=design&t=4iAXblqSygfASSvB-0👀 See
✅ Acceptance criteria