Sha256: 39fbd09809b9f730251f4fb87ae9ec4b1aa97d14b0808e5e74e85cf6b27284c3
Contents?: true
Size: 770 Bytes
Versions: 2
Compression:
Stored size: 770 Bytes
Contents
# frozen_string_literal: true module CoinsPaid class QrCode include Dry::Initializer.define -> do param :player_id option :currency option :label option :message end def url "#{token_type}:#{address}?label=#{encode(label)}&message=#{encode(message)}" end def address @address ||= CoinsPaid.address(player_id, currency: currency).address end def svg RQRCode::QRCode.new(url).as_svg( offset: 0, color: '000', shape_rendering: 'crispEdges', module_size: 3, standalone: true ) end private def token_type CRYPTO_CURRENCIES.fetch(currency) end def encode(string) URI.encode_www_form_component(string) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
coins_paid_rails-1.0.1 | lib/coins_paid/qr_code.rb |
coins_paid_rails-1.0.0 | lib/coins_paid/qr_code.rb |