Sha256: 4367573cd53a52fdf58de75be8a9bb10d2960ac5bfcfed95efee1ad9fd46ba65
Contents?: true
Size: 965 Bytes
Versions: 2
Compression:
Stored size: 965 Bytes
Contents
# frozen_string_literal: true require 'dry-struct' require 'dry-initializer' require_relative 'coins_paid/address' require_relative 'coins_paid/coins_paid_address' require_relative 'coins_paid/qr_code' module CoinsPaid module_function UnknownCurrency = Class.new RuntimeError DEFAULT_CONVERT_TO = ENV['COINS_PAID_CURRENCY'] ADDRESS_PREFIXES = { 'BTC' => 'bitcoin', 'BCH' => 'bitcoincash', 'ETH' => 'ethereum', 'EURTE' => 'ethereum', 'LTC' => 'litecoin', 'USDT' => 'bitcoin', 'USDTE' => 'ethereum' }.freeze def address(foreign_id, currency:) Address.new(foreign_id: foreign_id, currency: currency, convert_to: DEFAULT_CONVERT_TO).call end def qr_code(player_id, currency:, label:, message:) QrCode.new(player_id, currency: currency, label: label, message: message) end def currency(name) CoinsPaid::API.currencies_list.find { |item| item.currency == name } || raise(UnknownCurrency, name) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
coins_paid_rails-1.1.2 | lib/coins_paid.rb |
coins_paid_rails-1.1.1 | lib/coins_paid.rb |