exercism/website

View on GitHub
app/views/components/perk.html.haml

Summary

Maintainability
Test Coverage
.c-perk
  = image_tag (perk.light_logo.presence || perk.partner.light_logo.presence || 'blank.png'), alt: "Logo of #{perk.partner.name}", class: 'logo logo-light'
  = image_tag (perk.dark_logo.presence || perk.partner.dark_logo.presence || 'blank.png'), alt: "Logo of #{perk.partner.name}", class: 'logo logo-dark'
  %p.about= perk.preview_text
  .details= raw offer_summary_html
  .flex.gap-12
    - if !user_signed_in?
      = render ReactComponents::Perks::PerksExternalModalButton.new(perk)
    - elsif perk.voucher_code?
      = render ReactComponents::Perks::PerksModalButton.new(perk)
    - else
      = link_to button_text, claim_perk_path(perk), class: 'btn-m btn-primary', data: { turbo: false }
    = link_to "Learn more", perk_path(perk), class: 'btn-m btn-enhanced'