jwt_auth_client 0.1.0 → 0.2.0
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 +4 -4
- data/CHANGELOG.md +67 -0
- data/LICENSE +21 -0
- data/README.md +168 -79
- data/lib/jwt_auth_client/configuration.rb +142 -26
- data/lib/jwt_auth_client/errors.rb +15 -0
- data/lib/jwt_auth_client/http_client.rb +99 -36
- data/lib/jwt_auth_client/issuable.rb +53 -0
- data/lib/jwt_auth_client/json_decoder.rb +18 -0
- data/lib/jwt_auth_client/token_issuer.rb +50 -38
- data/lib/jwt_auth_client/version.rb +1 -1
- data/lib/jwt_auth_client.rb +8 -13
- metadata +42 -38
- data/Gemfile +0 -27
- data/Gemfile.lock +0 -109
- data/Rakefile +0 -27
- data/lib/jwt_auth_client/billing_client.rb +0 -13
- data/pkg/jwt_auth_client-0.1.0.gem +0 -0
data/Gemfile.lock
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
PATH
|
|
2
|
-
remote: .
|
|
3
|
-
specs:
|
|
4
|
-
jwt_auth_client (0.1.0)
|
|
5
|
-
activesupport (>= 6.0)
|
|
6
|
-
faraday (~> 2.9)
|
|
7
|
-
jwt (~> 2.8)
|
|
8
|
-
|
|
9
|
-
GEM
|
|
10
|
-
remote: https://rubygems.org/
|
|
11
|
-
specs:
|
|
12
|
-
activesupport (8.1.0)
|
|
13
|
-
base64
|
|
14
|
-
bigdecimal
|
|
15
|
-
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
16
|
-
connection_pool (>= 2.2.5)
|
|
17
|
-
drb
|
|
18
|
-
i18n (>= 1.6, < 2)
|
|
19
|
-
json
|
|
20
|
-
logger (>= 1.4.2)
|
|
21
|
-
minitest (>= 5.1)
|
|
22
|
-
securerandom (>= 0.3)
|
|
23
|
-
tzinfo (~> 2.0, >= 2.0.5)
|
|
24
|
-
uri (>= 0.13.1)
|
|
25
|
-
addressable (2.8.7)
|
|
26
|
-
public_suffix (>= 2.0.2, < 7.0)
|
|
27
|
-
base64 (0.3.0)
|
|
28
|
-
bigdecimal (3.3.1)
|
|
29
|
-
coderay (1.1.3)
|
|
30
|
-
concurrent-ruby (1.3.5)
|
|
31
|
-
connection_pool (2.5.4)
|
|
32
|
-
crack (1.0.1)
|
|
33
|
-
bigdecimal
|
|
34
|
-
rexml
|
|
35
|
-
diff-lcs (1.6.2)
|
|
36
|
-
drb (2.2.3)
|
|
37
|
-
ethon (0.15.0)
|
|
38
|
-
ffi (>= 1.15.0)
|
|
39
|
-
faraday (2.14.0)
|
|
40
|
-
faraday-net_http (>= 2.0, < 3.5)
|
|
41
|
-
json
|
|
42
|
-
logger
|
|
43
|
-
faraday-net_http (3.4.1)
|
|
44
|
-
net-http (>= 0.5.0)
|
|
45
|
-
faraday-retry (2.3.2)
|
|
46
|
-
faraday (~> 2.0)
|
|
47
|
-
faraday-typhoeus (1.1.0)
|
|
48
|
-
faraday (~> 2.0)
|
|
49
|
-
typhoeus (~> 1.4)
|
|
50
|
-
ffi (1.17.2-x86_64-linux-gnu)
|
|
51
|
-
hashdiff (1.2.1)
|
|
52
|
-
i18n (1.14.7)
|
|
53
|
-
concurrent-ruby (~> 1.0)
|
|
54
|
-
json (2.15.1)
|
|
55
|
-
jwt (2.10.2)
|
|
56
|
-
base64
|
|
57
|
-
logger (1.7.0)
|
|
58
|
-
method_source (1.1.0)
|
|
59
|
-
minitest (5.26.0)
|
|
60
|
-
net-http (0.6.0)
|
|
61
|
-
uri
|
|
62
|
-
pry (0.15.2)
|
|
63
|
-
coderay (~> 1.1)
|
|
64
|
-
method_source (~> 1.0)
|
|
65
|
-
public_suffix (6.0.2)
|
|
66
|
-
rake (13.3.0)
|
|
67
|
-
rexml (3.4.4)
|
|
68
|
-
rspec (3.13.2)
|
|
69
|
-
rspec-core (~> 3.13.0)
|
|
70
|
-
rspec-expectations (~> 3.13.0)
|
|
71
|
-
rspec-mocks (~> 3.13.0)
|
|
72
|
-
rspec-core (3.13.6)
|
|
73
|
-
rspec-support (~> 3.13.0)
|
|
74
|
-
rspec-expectations (3.13.5)
|
|
75
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
|
76
|
-
rspec-support (~> 3.13.0)
|
|
77
|
-
rspec-mocks (3.13.6)
|
|
78
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
|
79
|
-
rspec-support (~> 3.13.0)
|
|
80
|
-
rspec-support (3.13.6)
|
|
81
|
-
securerandom (0.4.1)
|
|
82
|
-
timecop (0.9.10)
|
|
83
|
-
typhoeus (1.5.0)
|
|
84
|
-
ethon (>= 0.9.0, < 0.16.0)
|
|
85
|
-
tzinfo (2.0.6)
|
|
86
|
-
concurrent-ruby (~> 1.0)
|
|
87
|
-
uri (1.0.4)
|
|
88
|
-
webmock (3.25.1)
|
|
89
|
-
addressable (>= 2.8.0)
|
|
90
|
-
crack (>= 0.3.2)
|
|
91
|
-
hashdiff (>= 0.4.0, < 2.0.0)
|
|
92
|
-
|
|
93
|
-
PLATFORMS
|
|
94
|
-
x86_64-linux
|
|
95
|
-
|
|
96
|
-
DEPENDENCIES
|
|
97
|
-
bundler (~> 2.0)
|
|
98
|
-
faraday (~> 2.7)
|
|
99
|
-
faraday-retry (~> 2.0)
|
|
100
|
-
faraday-typhoeus
|
|
101
|
-
jwt_auth_client!
|
|
102
|
-
pry (~> 0.14)
|
|
103
|
-
rake (~> 13.0)
|
|
104
|
-
rspec (~> 3.0)
|
|
105
|
-
timecop (~> 0.9)
|
|
106
|
-
webmock (~> 3.19)
|
|
107
|
-
|
|
108
|
-
BUNDLED WITH
|
|
109
|
-
2.4.22
|
data/Rakefile
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
require 'rake'
|
|
2
|
-
require 'rake/testtask'
|
|
3
|
-
require 'rspec/core/rake_task'
|
|
4
|
-
require 'rubygems/package_task'
|
|
5
|
-
require "bundler/gem_tasks"
|
|
6
|
-
|
|
7
|
-
# Load the gemspec to get gem metadata
|
|
8
|
-
spec = Gem::Specification.load("jwt_auth_client.gemspec")
|
|
9
|
-
|
|
10
|
-
# Task to run all RSpec tests
|
|
11
|
-
RSpec::Core::RakeTask.new(:spec) do |t|
|
|
12
|
-
# Use RSpec's command-line options
|
|
13
|
-
t.rspec_opts = "--color --format documentation"
|
|
14
|
-
# Specify the files to run
|
|
15
|
-
t.pattern = 'spec/**/*_spec.rb'
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
# Define 'test' as an alias for 'spec'
|
|
19
|
-
task :test => :spec
|
|
20
|
-
|
|
21
|
-
# Define a task for building the gem (creates the .gem file)
|
|
22
|
-
Gem::PackageTask.new(spec) do |pkg|
|
|
23
|
-
# Optional: Customize the package task if necessary
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
# Default task is usually to run tests
|
|
27
|
-
task :default => :spec
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
require_relative 'http_client'
|
|
2
|
-
|
|
3
|
-
module JwtAuthClient
|
|
4
|
-
# A high-level, service-specific client that inherits from HttpClient
|
|
5
|
-
# and automatically sets the target_service to :billing_api.
|
|
6
|
-
class BillingClient < HttpClient
|
|
7
|
-
# The public entry point, mirroring the service object pattern,
|
|
8
|
-
# but hardcoding the target_service.
|
|
9
|
-
def self.call(user_id:, scopes: [], base_url: nil)
|
|
10
|
-
super(user_id: user_id, target_service: :billing_api, scopes: scopes, base_url: base_url)
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
Binary file
|