nubank_sdk 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aec1c5da9cacf0f6fc08c659866de92d86bc4aeded018f50cd4647ad83d4a08b
4
- data.tar.gz: e8d379085b5e539eac996936bd53b696a9cfbfbc9415e7603baab93739149e3f
3
+ metadata.gz: 40bf914032d2cdba0e12fae471fe4f73f5a60badb54216517df1348f3270e1d5
4
+ data.tar.gz: 7fe5673e470fa82511638a5aa5dddf7f2ca35bbf769b096cbc8f483861c9ef3d
5
5
  SHA512:
6
- metadata.gz: c186f8f64658205365a9a086ae7e10c4b506d5a67839bc89a534616c7387235960c4c5f13b30fe5099b528b62ee14c844b084ee98aca822efbb6c94014902c50
7
- data.tar.gz: e3dbe818c89e3ea593cbf2a34411559d1c6af531310f4eec930a254cdf411f9a05c711812a71896da023dbc322293202290fce2bdbc65749bc2ab72e5067a4d9
6
+ metadata.gz: 5cc26eb68fdf9f2aa0a1e8f39dedc11ff3ba1e2c721340f3bc932bf62c779124d0c9bc71905332c35021c95f7968c25b53aafaa708eec4d063e95f978ea7b481
7
+ data.tar.gz: e102db85e4f27bff76e94fd051a69019e25b281f7b35ea39b322f55c41cac44f7c6fc420610e050aa8954ed5f13670bea97cd13de3bce0e201ac205b2a9670e7
@@ -0,0 +1 @@
1
+ github: [Viserion77]
@@ -14,10 +14,10 @@ jobs:
14
14
 
15
15
  steps:
16
16
  - uses: actions/checkout@v3
17
- - name: Set up Ruby 2.6
17
+ - name: Set up Ruby 3.1
18
18
  uses: actions/setup-ruby@v1
19
19
  with:
20
- ruby-version: 2.6.x
20
+ ruby-version: 3.1.x
21
21
 
22
22
  - name: Publish to RubyGems
23
23
  run: |
data/.rubocop.yml CHANGED
@@ -1,5 +1,2 @@
1
1
  require:
2
2
  - rubocop-rspec
3
-
4
- Style/BracesAroundHashParameters:
5
- Enabled: false
data/.travis.yml CHANGED
@@ -4,4 +4,4 @@ language: ruby
4
4
  cache: bundler
5
5
  rvm:
6
6
  - 2.3.3
7
- before_install: gem install bundler -v 1.17.3
7
+ before_install: gem install bundler -v 2.3.26
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
- source "https://rubygems.org"
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
2
4
 
3
5
  git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
4
6
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nubank_sdk (0.6.0)
4
+ nubank_sdk (0.6.1)
5
5
  faraday (~> 2.7.1)
6
6
  json (~> 2.3)
7
7
 
@@ -18,21 +18,22 @@ GEM
18
18
  diff-lcs (1.5.0)
19
19
  factory_bot (4.8.2)
20
20
  activesupport (>= 3.0.0)
21
- faraday (2.7.1)
21
+ faraday (2.7.2)
22
22
  faraday-net_http (>= 2.0, < 3.1)
23
23
  ruby2_keywords (>= 0.0.4)
24
24
  faraday-net_http (3.0.2)
25
+ gem-release (2.2.2)
25
26
  i18n (1.12.0)
26
27
  concurrent-ruby (~> 1.0)
27
- jaro_winkler (1.5.4)
28
28
  json (2.6.2)
29
29
  minitest (5.15.0)
30
- parallel (1.19.2)
31
- parser (3.1.2.1)
30
+ parallel (1.22.1)
31
+ parser (3.1.3.0)
32
32
  ast (~> 2.4.1)
33
- powerpack (0.1.3)
34
33
  rainbow (3.1.1)
35
- rake (10.5.0)
34
+ rake (13.0.6)
35
+ regexp_parser (2.6.1)
36
+ rexml (3.2.5)
36
37
  rspec (3.11.0)
37
38
  rspec-core (~> 3.11.0)
38
39
  rspec-expectations (~> 3.11.0)
@@ -46,22 +47,26 @@ GEM
46
47
  diff-lcs (>= 1.2.0, < 2.0)
47
48
  rspec-support (~> 3.11.0)
48
49
  rspec-support (3.11.1)
49
- rubocop (0.57.2)
50
- jaro_winkler (~> 1.5.1)
50
+ rubocop (1.41.0)
51
+ json (~> 2.3)
51
52
  parallel (~> 1.10)
52
- parser (>= 2.5)
53
- powerpack (~> 0.1)
53
+ parser (>= 3.1.2.1)
54
54
  rainbow (>= 2.2.2, < 4.0)
55
+ regexp_parser (>= 1.8, < 3.0)
56
+ rexml (>= 3.2.5, < 4.0)
57
+ rubocop-ast (>= 1.23.0, < 2.0)
55
58
  ruby-progressbar (~> 1.7)
56
- unicode-display_width (~> 1.0, >= 1.0.1)
57
- rubocop-rspec (1.27.0)
58
- rubocop (>= 0.56.0)
59
+ unicode-display_width (>= 1.4.0, < 3.0)
60
+ rubocop-ast (1.24.0)
61
+ parser (>= 3.1.1.0)
62
+ rubocop-rspec (2.16.0)
63
+ rubocop (~> 1.33)
59
64
  ruby-progressbar (1.11.0)
60
65
  ruby2_keywords (0.0.5)
61
66
  thread_safe (0.3.6)
62
67
  tzinfo (1.2.10)
63
68
  thread_safe (~> 0.1)
64
- unicode-display_width (1.8.0)
69
+ unicode-display_width (2.3.0)
65
70
  webrick (1.7.0)
66
71
  yard (0.9.28)
67
72
  webrick (~> 1.7.0)
@@ -70,14 +75,15 @@ PLATFORMS
70
75
  ruby
71
76
 
72
77
  DEPENDENCIES
73
- bundler (~> 1.17)
78
+ bundler (~> 2.3.26)
74
79
  factory_bot (~> 4.8.2)
80
+ gem-release (~> 2.2.2)
75
81
  nubank_sdk!
76
- rake (~> 10.0)
82
+ rake (~> 13.0)
77
83
  rspec (~> 3.0)
78
- rubocop (~> 0.57.2)
79
- rubocop-rspec (~> 1.27.0)
84
+ rubocop (~> 1.41.0)
85
+ rubocop-rspec (~> 2.16.0)
80
86
  yard (~> 0.9.12)
81
87
 
82
88
  BUNDLED WITH
83
- 1.17.3
89
+ 2.3.26
data/Rakefile CHANGED
@@ -1,26 +1,31 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
3
5
 
4
6
  RSpec::Core::RakeTask.new(:spec)
5
7
  Bundler::GemHelper.install_tasks
6
8
 
7
- task :default => :spec
9
+ task default: :spec
8
10
 
9
11
  task :start_new_release do
10
12
  bump = ENV['BUMP'] || 'patch'
11
13
 
12
- sh 'gem install gem-release'
13
14
  sh "gem bump --version #{bump}"
14
-
15
+
15
16
  sh 'bundle'
16
17
  Rake::Task[:build].invoke
17
-
18
+
18
19
  sh 'git add .'
19
- sh "git commit -m \"build(version): :bookmark: bump #{bump}\""
20
+ sh "git commit -m \"build(version): :bookmark: bump #{bump}\""
20
21
  sh 'git push'
21
22
 
23
+ Rake::Task[:generate_git_tag].invoke
24
+ end
25
+
26
+ task :generate_git_tag do
22
27
  version = NubankSdk::VERSION
23
28
  version_tag = "v#{version}"
24
29
  sh "git tag -a #{version_tag} -m \"Version #{version}\""
25
30
  sh 'git push --tags'
26
- end
31
+ end
data/bin/console CHANGED
@@ -1,7 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
- require "bundler/setup"
4
- require "nubank_sdk"
4
+ require 'bundler/setup'
5
+ require 'nubank_sdk'
5
6
 
6
7
  # You can add fixtures and/or initialization code here to make experimenting
7
8
  # with your gem easier. You can also use a different console, if you like.
@@ -10,5 +11,5 @@ require "nubank_sdk"
10
11
  # require "pry"
11
12
  # Pry.start
12
13
 
13
- require "irb"
14
+ require 'irb'
14
15
  IRB.start(__FILE__)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module NubankSdk
2
4
  class Account
3
5
  #
@@ -1,9 +1,11 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'faraday'
2
4
  require 'json'
3
5
 
4
6
  module NubankSdk
5
7
  class ApiRoutes
6
- DISCOVERY_URI = 'https://prod-s0-webapp-proxy.nubank.com.br'.freeze
8
+ DISCOVERY_URI = 'https://prod-s0-webapp-proxy.nubank.com.br'
7
9
  PROXY_PATHS = {
8
10
  default: '/api/discovery',
9
11
  app: '/api/app/discovery',
@@ -28,7 +30,7 @@ module NubankSdk
28
30
  # @param [Symbol] type, :splitted or :full
29
31
  #
30
32
  # @return [String, Array]
31
- def entrypoint(path: :default, entrypoint:, type: :full)
33
+ def entrypoint(entrypoint:, path: :default, type: :full)
32
34
  discovery(path) if @url_discovery_map[path].nil?
33
35
 
34
36
  url = @url_discovery_map[path][entrypoint]
@@ -47,7 +49,7 @@ module NubankSdk
47
49
  # @param [String] url
48
50
  #
49
51
  # @return [Hash]
50
- def add_entrypoint(path: :default, entrypoint:, url:)
52
+ def add_entrypoint(entrypoint:, url:, path: :default)
51
53
  path_map = @url_discovery_map[path] || {}
52
54
  path_map[entrypoint] = url
53
55
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'securerandom'
2
4
 
3
5
  module NubankSdk
@@ -67,10 +69,9 @@ module NubankSdk
67
69
  # @return [File] the certificate file
68
70
  def exchange_certs(email_code, password)
69
71
  response = default_connection.post(@gen_certificate_path, payload(password).merge({
70
- code: email_code,
71
- 'encrypted-code': @encrypted_code
72
- })
73
- )
72
+ code: email_code,
73
+ 'encrypted-code': @encrypted_code
74
+ }))
74
75
 
75
76
  response_data = Client.get_body(response)
76
77
  certificate.process_decoded(key, response_data[:certificate])
@@ -89,12 +90,12 @@ module NubankSdk
89
90
  parsed = {}
90
91
 
91
92
  chunks.each do |chunk|
92
- key, value = chunk.split('=')
93
- key = key.strip().gsub(' ', '_').gsub('-', '_').to_sym
94
- value = value.gsub('"', '')
95
- parsed[key] = value
93
+ key, value = chunk.split('=')
94
+ key = key.strip.gsub(' ', '_').gsub('-', '_').to_sym
95
+ value = value.gsub('"', '')
96
+ parsed[key] = value
96
97
  end
97
-
98
+
98
99
  parsed
99
100
  end
100
101
 
@@ -110,7 +111,7 @@ module NubankSdk
110
111
  password: password,
111
112
  public_key: key.public_key.to_pem,
112
113
  device_id: @device_id,
113
- model: "NubankSdk Client (#@device_id)",
114
+ model: "NubankSdk Client (#{@device_id})"
114
115
  }
115
116
  end
116
117
 
@@ -145,7 +146,7 @@ module NubankSdk
145
146
  #
146
147
  # @return [NubankSdk::ApiRoutes] the api routes with the new links
147
148
  def update_api_routes(links)
148
- feed_url_keys = [:events, :magnitude]
149
+ feed_url_keys = %i[events magnitude]
149
150
  bills_url_keys = [:bills_summary]
150
151
  customer_url_keys = [:customer]
151
152
  account_url_keys = [:account]
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'openssl'
2
4
 
3
5
  module NubankSdk
4
6
  class Certificate
5
- FILES_PATH = './certificates/'.freeze
7
+ FILES_PATH = './certificates/'
6
8
 
7
9
  #
8
10
  # Controller of certifications
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'faraday'
2
4
  require 'json'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module NubankSdk
2
4
  class Credit
3
5
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module NubankSdk
2
4
  class User
3
5
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module NubankSdk
2
- VERSION = "0.6.0"
4
+ VERSION = '0.6.1'
3
5
  end
data/lib/nubank_sdk.rb CHANGED
@@ -1,11 +1,13 @@
1
- require "nubank_sdk/account"
2
- require "nubank_sdk/api_routes"
3
- require "nubank_sdk/auth"
4
- require "nubank_sdk/certificate"
5
- require "nubank_sdk/credit"
6
- require "nubank_sdk/client"
7
- require "nubank_sdk/user"
8
- require "nubank_sdk/version"
1
+ # frozen_string_literal: true
2
+
3
+ require 'nubank_sdk/account'
4
+ require 'nubank_sdk/api_routes'
5
+ require 'nubank_sdk/auth'
6
+ require 'nubank_sdk/certificate'
7
+ require 'nubank_sdk/credit'
8
+ require 'nubank_sdk/client'
9
+ require 'nubank_sdk/user'
10
+ require 'nubank_sdk/version'
9
11
 
10
12
  module NubankSdk
11
13
  class Error < StandardError; end
data/nubank_sdk.gemspec CHANGED
@@ -1,34 +1,37 @@
1
- lib = File.expand_path("../lib", __FILE__)
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require "nubank_sdk/version"
5
+ require 'nubank_sdk/version'
4
6
 
5
7
  Gem::Specification.new do |spec|
6
- spec.name = "nubank_sdk"
8
+ spec.name = 'nubank_sdk'
7
9
  spec.version = NubankSdk::VERSION
8
- spec.authors = ["Viserion77"]
9
- spec.email = ["jeferson.a.oficial@gmail.com"]
10
+ spec.authors = ['Viserion77']
11
+ spec.email = ['jeferson.a.oficial@gmail.com']
10
12
 
11
- spec.summary = %q{A gem to make it ease to monitorize your Nubank account.}
12
- spec.description = %q{Monitorize balances, recent transactions, credit limit etc...}
13
- spec.homepage = "https://github.com/Viserion77/nubank_sdk"
13
+ spec.summary = 'A gem to make it ease to monitorize your Nubank account.'
14
+ spec.description = 'Monitorize balances, recent transactions, credit limit etc...'
15
+ spec.homepage = 'https://github.com/Viserion77/nubank_sdk'
14
16
 
15
17
  # Specify which files should be added to the gem when it is released.
16
18
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
17
- spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
19
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
18
20
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19
21
  end
20
- spec.bindir = "exe"
22
+ spec.bindir = 'exe'
21
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
- spec.require_paths = ["lib"]
24
+ spec.require_paths = ['lib']
23
25
 
24
- spec.add_development_dependency "bundler", "~> 1.17"
25
- spec.add_development_dependency "rake", "~> 10.0"
26
- spec.add_development_dependency "rspec", "~> 3.0"
27
- spec.add_development_dependency "rubocop", "~> 0.57.2"
28
- spec.add_development_dependency "rubocop-rspec", "~> 1.27.0"
29
- spec.add_development_dependency "factory_bot", "~> 4.8.2"
30
- spec.add_development_dependency "yard", "~> 0.9.12"
26
+ spec.add_development_dependency 'bundler', '~> 2.3.26'
27
+ spec.add_development_dependency 'factory_bot', '~> 4.8.2'
28
+ spec.add_development_dependency 'rake', '~> 13.0'
29
+ spec.add_development_dependency 'rspec', '~> 3.0'
30
+ spec.add_development_dependency 'rubocop', '~> 1.41.0'
31
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.16.0'
32
+ spec.add_development_dependency 'yard', '~> 0.9.12'
33
+ spec.add_development_dependency 'gem-release', '~> 2.2.2'
31
34
 
32
- spec.add_dependency "faraday", "~> 2.7.1"
33
- spec.add_dependency "json", "~> 2.3"
35
+ spec.add_dependency 'faraday', '~> 2.7.1'
36
+ spec.add_dependency 'json', '~> 2.3'
34
37
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nubank_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Viserion77
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-03 00:00:00.000000000 Z
11
+ date: 2022-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.17'
19
+ version: 2.3.26
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.17'
26
+ version: 2.3.26
27
+ - !ruby/object:Gem::Dependency
28
+ name: factory_bot
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 4.8.2
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 4.8.2
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: '10.0'
47
+ version: '13.0'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: '10.0'
54
+ version: '13.0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rspec
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -58,56 +72,56 @@ dependencies:
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: 0.57.2
75
+ version: 1.41.0
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: 0.57.2
82
+ version: 1.41.0
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rubocop-rspec
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: 1.27.0
89
+ version: 2.16.0
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: 1.27.0
96
+ version: 2.16.0
83
97
  - !ruby/object:Gem::Dependency
84
- name: factory_bot
98
+ name: yard
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
101
  - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: 4.8.2
103
+ version: 0.9.12
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
- version: 4.8.2
110
+ version: 0.9.12
97
111
  - !ruby/object:Gem::Dependency
98
- name: yard
112
+ name: gem-release
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: 0.9.12
117
+ version: 2.2.2
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: 0.9.12
124
+ version: 2.2.2
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: faraday
113
127
  requirement: !ruby/object:Gem::Requirement
@@ -143,6 +157,7 @@ executables: []
143
157
  extensions: []
144
158
  extra_rdoc_files: []
145
159
  files:
160
+ - ".github/FUNDING.yml"
146
161
  - ".github/workflows/gem-push.yml"
147
162
  - ".gitignore"
148
163
  - ".rspec"
@@ -185,7 +200,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
185
200
  - !ruby/object:Gem::Version
186
201
  version: '0'
187
202
  requirements: []
188
- rubygems_version: 3.0.3.1
203
+ rubygems_version: 3.3.26
189
204
  signing_key:
190
205
  specification_version: 4
191
206
  summary: A gem to make it ease to monitorize your Nubank account.