Module: Solrengine::Transactions::Transferable

Extended by:
ActiveSupport::Concern
Defined in:
app/models/solrengine/transactions/transferable.rb

Constant Summary collapse

SOLANA_ADDRESS_FORMAT =
/\A[1-9A-HJ-NP-Za-km-z]{32,44}\z/
SOLANA_SIGNATURE_FORMAT =
/\A[1-9A-HJ-NP-Za-km-z]{86,88}\z/
VALID_STATUSES =
%w[pending submitted processed confirmed finalized failed].freeze
MAX_LAMPORTS =
580_000_000_000_000_000

Instance Method Summary collapse

Instance Method Details

#confirmed?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'app/models/solrengine/transactions/transferable.rb', line 39

def confirmed?
  status == "confirmed" || status == "finalized"
end

#failed?Boolean

Returns:

  • (Boolean)


43
44
45
# File 'app/models/solrengine/transactions/transferable.rb', line 43

def failed?
  status == "failed"
end

#pending?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'app/models/solrengine/transactions/transferable.rb', line 47

def pending?
  status == "pending" || status == "submitted"
end

#short_recipientObject



35
36
37
# File 'app/models/solrengine/transactions/transferable.rb', line 35

def short_recipient
  "#{recipient[0..3]}...#{recipient[-4..]}"
end

#short_signatureObject



30
31
32
33
# File 'app/models/solrengine/transactions/transferable.rb', line 30

def short_signature
  return nil unless signature
  "#{signature[0..7]}...#{signature[-4..]}"
end

#sol_amount_displayObject



26
27
28
# File 'app/models/solrengine/transactions/transferable.rb', line 26

def sol_amount_display
  amount_sol.to_f.round(6)
end