modulr-api 0.0.48 → 0.0.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ca930d3b546bcbb757139678544570bc83d2cc6503326e6d63edcf2fcc6466a
4
- data.tar.gz: 918f36ba8ee50005ba51018e0cdfb66c823cc6223fc4a9a0f12e632381c31ad8
3
+ metadata.gz: 20001165b272ce4c3033a98404ff69e538e8021c49215e0a6b52038d98810719
4
+ data.tar.gz: 85f9a1e9dcec03fc894ce9383adf906f6e8b0559352900258bd224e364f79787
5
5
  SHA512:
6
- metadata.gz: 14a434481e2c23bc2eff552068e2b71f37f83d06ee69b510daf9094d04bb16bf672ca0ffe5d72b75229d3d2a9792809e3eb8b7bf4a999807dc5137b6038c6c89
7
- data.tar.gz: d28b6784863fd6e19420d84f5e2a6d1bdfd2cf1cdd50438bcd5c231a5cab1fa7c03cbc2a34e1708672891713f34a0055a49a2abcca2358546938d6c2654d6840
6
+ metadata.gz: 78b98f9a1a812ed31226b69abaa0a7a299dd206fa4d5b3142b58c4e32c31b8f14ce0fed7922c0b9b1d27d81fe3bffbc1c782e2f1c29fd29ce5180d84ad0c1d55
7
+ data.tar.gz: 0fd168df6e4e5701e8f1d1b8f92649e53a070fc4b235cb2e4dab8c876a42707f28f25fdd3c0f8fbbc37f13c5d9a7cc75a347c015d335afd6c8654e9187aa8dae
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- modulr-api (0.0.48)
4
+ modulr-api (0.0.49)
5
5
  faraday (~> 1.0)
6
6
  faraday_middleware (~> 1.0)
7
7
 
data/README.md CHANGED
@@ -26,6 +26,18 @@ gem install modulr-api
26
26
 
27
27
  Run `bin/console` for an interactive prompt to experiment with the code.
28
28
 
29
+ HTTP logging is enabled by default through `Faraday::Response::Logger`. You can replace that middleware and pass extra options to it:
30
+
31
+ ```rb
32
+ client = Modulr::Client.new(
33
+ apikey: "YOUR_API_KEY",
34
+ logger_middleware: CustomMiddleware,
35
+ logger_options: { log_level: :debug }
36
+ )
37
+ ```
38
+
39
+ `logger_options` are merged over `{ headers: true, bodies: true }`. The middleware is initialized as `Middleware.new(app, nil, options)` and receives the existing password filter block. Set `logger_enabled: false` to skip logging.
40
+
29
41
  ### Customers
30
42
 
31
43
  ```rb
data/lib/modulr/client.rb CHANGED
@@ -16,7 +16,7 @@ module Modulr
16
16
  SANDBOX_URL = "https://api-sandbox.modulrfinance.com/api-sandbox-token"
17
17
  BASE_URL = SANDBOX_URL
18
18
 
19
- attr_reader :base_url, :origin, :proxy, :username, :logger_enabled
19
+ attr_reader :base_url, :origin, :proxy, :username, :logger_enabled, :logger_middleware, :logger_options
20
20
 
21
21
  def initialize(options = {})
22
22
  @base_url = options[:base_url] || BASE_URL
@@ -25,6 +25,8 @@ module Modulr
25
25
  @apikey = options[:apikey] || ENV["MODULR_APIKEY"]
26
26
  @apisecret = options[:apisecret] || ENV["MODULR_APISECRET"]
27
27
  @logger_enabled = options[:logger_enabled].nil? ? true : options[:logger_enabled]
28
+ @logger_middleware = options.fetch(:logger_middleware, Faraday::Response::Logger)
29
+ @logger_options = options.fetch(:logger_options, {})
28
30
  @services = {}
29
31
  end
30
32
 
@@ -37,7 +39,7 @@ module Modulr
37
39
  parser_options: { symbolize_names: true }
38
40
  builder.proxy = @proxy if proxy
39
41
  if @logger_enabled
40
- builder.response :logger, nil, { headers: true, bodies: true } do |logger|
42
+ builder.use @logger_middleware, nil, { headers: true, bodies: true }.merge(@logger_options) do |logger|
41
43
  logger.filter(/("password":)"(\w+)"/, '\1[FILTERED]')
42
44
  end
43
45
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Modulr
4
- VERSION = "0.0.48"
4
+ VERSION = "0.0.49"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: modulr-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.48
4
+ version: 0.0.49
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aitor García Rey