Sha256: 5f1a26f07dffdcf2144ac404b7c76473b1ac8fd7c1e4f586f6edd2bddf602a11

Contents?: true

Size: 982 Bytes

Versions: 2

Compression:

Stored size: 982 Bytes

Contents

require 'active_support'
require 'active_support/core_ext/object'
require 'dry-initializer'
require 'dry-validation'

require 'flinks/version'
require 'flinks/request'
require 'flinks/api/account'
require 'flinks/api/card'
require 'flinks/api/refresh'
require 'flinks/api/statement'

module Flinks
  class Client
    extend Dry::Initializer

    include Flinks::Request
    include Flinks::API::Account
    include Flinks::API::Card
    include Flinks::API::Refresh
    include Flinks::API::Statement

    option :customer_id
    option :api_endpoint, default: proc { "https://sandbox.flinks.io/v3/" }
    option :user_agent,   default: proc { "Flinks Ruby Gem #{Flinks::VERSION}" }
    option :on_error,     default: proc { proc {} }
    option :debug,        default: proc { false }

    #
    # @param validation [Dry::Validation::Result]
    # @return [String]
    def error_message(validation)
      validation.messages(full: true).values.flatten.to_sentence
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
flinks-0.1.1 lib/flinks/client.rb
flinks-0.1.0 lib/flinks/client.rb