verifykit 0.0.0 → 0.1.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/Gemfile.lock +43 -1
- data/README.md +145 -1
- data/lib/verify_kit/client.rb +42 -0
- data/lib/verify_kit/core/service.rb +15 -0
- data/lib/verify_kit/resources/base.rb +44 -0
- data/lib/verify_kit/resources/sms.rb +21 -0
- data/lib/verify_kit/resources/whatsapp.rb +23 -0
- data/lib/verify_kit/responses/base.rb +11 -0
- data/lib/verify_kit/responses/error.rb +9 -0
- data/lib/verify_kit/responses/success.rb +10 -0
- data/lib/verify_kit/types.rb +9 -0
- data/lib/verify_kit/version.rb +1 -1
- data/lib/verify_kit.rb +25 -3
- metadata +139 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2473e1046dcafaf0c25dd4bbab37d4b74a3e8f2b6464c8389b8c3b57697a69d7
|
4
|
+
data.tar.gz: e737bafa0ab02717d2f9f47af3230970877a2ca18a9d6c6b13c3af08e0b7e239
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: edbd604aad4338fd0f48c6341118e6c24be073bd1821dd81c80b396b3f710a97734fc24aa0fa8512f2dbfb7bea8b5940bfc6bafae69493141faec551f82c277c
|
7
|
+
data.tar.gz: ac5b54578bdf04d4a84b77fa73ed33901cb32065b6266c1a5aabe21bd638f383b98590c77b901017c5a49b427deaf84040ea8d311f606c5e14d42e159b050cf5
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,14 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
verifykit (0.
|
4
|
+
verifykit (0.1.0)
|
5
|
+
dry-configurable (~> 1.0, >= 1.0.1)
|
6
|
+
dry-initializer (~> 3.1, >= 3.1.1)
|
7
|
+
dry-monads (~> 1.6)
|
8
|
+
dry-struct (~> 1.6)
|
9
|
+
dry-types (~> 1.7, >= 1.7.1)
|
10
|
+
faraday (~> 2.7, >= 2.7.4)
|
11
|
+
zeitwerk (~> 2.6, >= 2.6.8)
|
5
12
|
|
6
13
|
GEM
|
7
14
|
remote: https://rubygems.org/
|
@@ -9,7 +16,40 @@ GEM
|
|
9
16
|
ast (2.4.2)
|
10
17
|
awesome_print (1.9.2)
|
11
18
|
coderay (1.1.3)
|
19
|
+
concurrent-ruby (1.2.2)
|
12
20
|
diff-lcs (1.5.0)
|
21
|
+
dry-configurable (1.0.1)
|
22
|
+
dry-core (~> 1.0, < 2)
|
23
|
+
zeitwerk (~> 2.6)
|
24
|
+
dry-core (1.0.0)
|
25
|
+
concurrent-ruby (~> 1.0)
|
26
|
+
zeitwerk (~> 2.6)
|
27
|
+
dry-inflector (1.0.0)
|
28
|
+
dry-initializer (3.1.1)
|
29
|
+
dry-logic (1.5.0)
|
30
|
+
concurrent-ruby (~> 1.0)
|
31
|
+
dry-core (~> 1.0, < 2)
|
32
|
+
zeitwerk (~> 2.6)
|
33
|
+
dry-monads (1.6.0)
|
34
|
+
concurrent-ruby (~> 1.0)
|
35
|
+
dry-core (~> 1.0, < 2)
|
36
|
+
zeitwerk (~> 2.6)
|
37
|
+
dry-struct (1.6.0)
|
38
|
+
dry-core (~> 1.0, < 2)
|
39
|
+
dry-types (>= 1.7, < 2)
|
40
|
+
ice_nine (~> 0.11)
|
41
|
+
zeitwerk (~> 2.6)
|
42
|
+
dry-types (1.7.1)
|
43
|
+
concurrent-ruby (~> 1.0)
|
44
|
+
dry-core (~> 1.0)
|
45
|
+
dry-inflector (~> 1.0)
|
46
|
+
dry-logic (~> 1.4)
|
47
|
+
zeitwerk (~> 2.6)
|
48
|
+
faraday (2.7.4)
|
49
|
+
faraday-net_http (>= 2.0, < 3.1)
|
50
|
+
ruby2_keywords (>= 0.0.4)
|
51
|
+
faraday-net_http (3.0.2)
|
52
|
+
ice_nine (0.11.2)
|
13
53
|
json (2.6.3)
|
14
54
|
method_source (1.0.0)
|
15
55
|
parallel (1.23.0)
|
@@ -48,7 +88,9 @@ GEM
|
|
48
88
|
rubocop-ast (1.28.1)
|
49
89
|
parser (>= 3.2.1.0)
|
50
90
|
ruby-progressbar (1.13.0)
|
91
|
+
ruby2_keywords (0.0.5)
|
51
92
|
unicode-display_width (2.4.2)
|
93
|
+
zeitwerk (2.6.8)
|
52
94
|
|
53
95
|
PLATFORMS
|
54
96
|
arm64-darwin-22
|
data/README.md
CHANGED
@@ -32,7 +32,151 @@ gem install verifykit
|
|
32
32
|
|
33
33
|
## Usage
|
34
34
|
|
35
|
-
|
35
|
+
### Configuration
|
36
|
+
|
37
|
+
```ruby
|
38
|
+
# config/initializers/verifykit.rb
|
39
|
+
|
40
|
+
VerifyKit.configure do |config|
|
41
|
+
# it's optional, you can set manually when you create a VerifyKit::Client instance too
|
42
|
+
config.server_key = ENV.fetch('VERIFYKIT_SERVER_KEY')
|
43
|
+
|
44
|
+
# it's optional, default is Logger.new(STDOUT)
|
45
|
+
config.logger = Rails.logger
|
46
|
+
|
47
|
+
# it's optional, default is false
|
48
|
+
config.debug.enabled = true
|
49
|
+
|
50
|
+
# it's optional, default is 'v1.0', you can set manually when you create a VerifyKit::Client instance too but VerifyKit doesn't support any other version yet, so don't change it
|
51
|
+
config.api_version = 'v1.0'
|
52
|
+
end
|
53
|
+
|
54
|
+
# or
|
55
|
+
|
56
|
+
VerifyKit.config.server_key = ENV.fetch('VERIFYKIT_SERVER_KEY')
|
57
|
+
VerifyKit.config.logger = Rails.logger
|
58
|
+
VerifyKit.config.debug.enabled = true
|
59
|
+
VerifyKit.config.api_version = 'v1.0'
|
60
|
+
```
|
61
|
+
|
62
|
+
### Client
|
63
|
+
|
64
|
+
```ruby
|
65
|
+
# you can create a client instance with default configuration
|
66
|
+
client = VerifyKit::Client.new
|
67
|
+
|
68
|
+
# or you can create a client instance with custom configuration
|
69
|
+
client = VerifyKit::Client.new(server_key: 'your-server-key', api_version: 'v1.0')
|
70
|
+
```
|
71
|
+
|
72
|
+
### Verification
|
73
|
+
|
74
|
+
VerifyKit supports two verification methods: `sms` and `whatsapp`.
|
75
|
+
|
76
|
+
#### SMS Verification
|
77
|
+
|
78
|
+
Send a verification code to the phone number like this:
|
79
|
+
|
80
|
+
```ruby
|
81
|
+
client = VerifyKit::Client.new
|
82
|
+
|
83
|
+
params = { phoneNumber: '555 555 55 55', countryCode: 'TR' }
|
84
|
+
query = { lang: 'tr' } # optional, default is 'en'
|
85
|
+
|
86
|
+
result = client.sms.send(params) # or client.sms.send(params, query)
|
87
|
+
|
88
|
+
if result.success?
|
89
|
+
success_response = result.success
|
90
|
+
# success_response is a VerifyKit::Response::Success instance
|
91
|
+
|
92
|
+
# do something
|
93
|
+
else
|
94
|
+
error_response = result.failure
|
95
|
+
# error_response is a VerifyKit::Response::Error instance
|
96
|
+
|
97
|
+
# do something
|
98
|
+
end
|
99
|
+
```
|
100
|
+
|
101
|
+
Check the verification code like this:
|
102
|
+
|
103
|
+
```ruby
|
104
|
+
client = VerifyKit::Client.new
|
105
|
+
|
106
|
+
params = { phoneNumber: '554 597 46 46',
|
107
|
+
countryCode: 'TR',
|
108
|
+
reference: 'reference code',
|
109
|
+
code: 'verification code' }
|
110
|
+
query = { lang: 'tr' } # optional, default is 'en'
|
111
|
+
|
112
|
+
result = client.sms.check(params) # or client.sms.check(params, query)
|
113
|
+
|
114
|
+
if result.success?
|
115
|
+
success_response = result.success
|
116
|
+
# success_response is a VerifyKit::Response::Success instance
|
117
|
+
|
118
|
+
# do something
|
119
|
+
else
|
120
|
+
error_response = result.failure
|
121
|
+
# error_response is a VerifyKit::Response::Error instance
|
122
|
+
|
123
|
+
# do something
|
124
|
+
end
|
125
|
+
```
|
126
|
+
|
127
|
+
#### WhatsApp Verification
|
128
|
+
|
129
|
+
Send a verification code to the phone number like this:
|
130
|
+
|
131
|
+
```ruby
|
132
|
+
client = VerifyKit::Client.new
|
133
|
+
|
134
|
+
params = { phoneNumber: '555 555 55 55', countryCode: 'TR' }
|
135
|
+
query = { lang: 'tr' } # optional, default is 'en'
|
136
|
+
|
137
|
+
result = client.whatsapp.send(params) # or client.whatsapp.send(params, query)
|
138
|
+
|
139
|
+
if result.success?
|
140
|
+
success_response = result.success
|
141
|
+
# success_response is a VerifyKit::Response::Success instance
|
142
|
+
|
143
|
+
# do something
|
144
|
+
else
|
145
|
+
error_response = result.failure
|
146
|
+
# error_response is a VerifyKit::Response::Error instance
|
147
|
+
|
148
|
+
# do something
|
149
|
+
end
|
150
|
+
```
|
151
|
+
|
152
|
+
Check the verification code like this:
|
153
|
+
|
154
|
+
```ruby
|
155
|
+
client = VerifyKit::Client.new
|
156
|
+
|
157
|
+
params = { reference: 'reference code',
|
158
|
+
code: 'verification code' }
|
159
|
+
query = { lang: 'tr' } # optional, default is 'en'
|
160
|
+
|
161
|
+
result = client.whatsapp.check(params) # or client.whatsapp.check(params, query)
|
162
|
+
|
163
|
+
if result.success?
|
164
|
+
success_response = result.success
|
165
|
+
# success_response is a VerifyKit::Response::Success instance
|
166
|
+
|
167
|
+
# do something
|
168
|
+
else
|
169
|
+
error_response = result.failure
|
170
|
+
# error_response is a VerifyKit::Response::Error instance
|
171
|
+
|
172
|
+
# do something
|
173
|
+
end
|
174
|
+
```
|
175
|
+
|
176
|
+
### Response Objects
|
177
|
+
|
178
|
+
- [VerifyKit::Response::Success](lib/verify_kit/responses/success.rb)
|
179
|
+
- [VerifyKit::Response::Error](lib/verify_kit/responses/error.rb)
|
36
180
|
|
37
181
|
## Development
|
38
182
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'faraday'
|
4
|
+
|
5
|
+
module VerifyKit
|
6
|
+
class Client < Core::Service
|
7
|
+
BASE_URL = 'https://web-rest.verifykit.com'
|
8
|
+
SERVER_KEY_HEADER = 'X-Vfk-Server-Key'
|
9
|
+
|
10
|
+
option :server_key, type: Types::String | Types::Nil, default: proc { VerifyKit.config.server_key }
|
11
|
+
option :api_version, type: Types::String, default: proc { VerifyKit.config.api_version }
|
12
|
+
option :adapter, type: Types::Symbol, default: proc { Faraday.default_adapter }
|
13
|
+
|
14
|
+
def connection
|
15
|
+
@connection ||= Faraday.new(connection_url) do |conn|
|
16
|
+
conn.headers[SERVER_KEY_HEADER] = server_key
|
17
|
+
conn.request :json
|
18
|
+
conn.response :json, content_type: 'application/json'
|
19
|
+
conn.adapter adapter
|
20
|
+
|
21
|
+
if VerifyKit.config.debug.enabled
|
22
|
+
conn.response :logger, VerifyKit.config.logger, body: true,
|
23
|
+
bodies: { request: true, response: true }
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def sms
|
29
|
+
VerifyKit::Resources::SMS.new(self)
|
30
|
+
end
|
31
|
+
|
32
|
+
def whatsapp
|
33
|
+
VerifyKit::Resources::WhatsApp.new(self)
|
34
|
+
end
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
def connection_url
|
39
|
+
BASE_URL + "/#{api_version}"
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module VerifyKit
|
4
|
+
module Resources
|
5
|
+
class Base < Core::Service
|
6
|
+
param :client, type: Types.Instance(VerifyKit::Client)
|
7
|
+
option :connection, type: Types.Instance(Faraday::Connection), default: proc { client.connection }
|
8
|
+
|
9
|
+
private
|
10
|
+
|
11
|
+
def get_request(url, params: {}, headers: {})
|
12
|
+
connection.get(url, params, headers)
|
13
|
+
end
|
14
|
+
|
15
|
+
def post_request(url, body:, headers: {}, params: {})
|
16
|
+
connection.post(url, body, headers) do |req|
|
17
|
+
req.params = params
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def patch_request(url, body:, headers: {})
|
22
|
+
connection.patch(url, body, headers)
|
23
|
+
end
|
24
|
+
|
25
|
+
def put_request(url, body:, headers: {})
|
26
|
+
connection.put(url, body, headers)
|
27
|
+
end
|
28
|
+
|
29
|
+
def delete_request(url, params: {}, headers: {})
|
30
|
+
client.connection.delete(url, params, headers)
|
31
|
+
end
|
32
|
+
|
33
|
+
def error_response(response)
|
34
|
+
error_response = VerifyKit::Responses::Error.new(response.body)
|
35
|
+
Failure(error_response)
|
36
|
+
end
|
37
|
+
|
38
|
+
def success_response(response)
|
39
|
+
success_response = VerifyKit::Responses::Success.new(response.body)
|
40
|
+
Success(success_response)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module VerifyKit
|
4
|
+
module Resources
|
5
|
+
class SMS < VerifyKit::Resources::Base
|
6
|
+
def send(body = {}, params = {})
|
7
|
+
response = post_request('send-otp', body: body, params: params)
|
8
|
+
return error_response(response) unless response.success?
|
9
|
+
|
10
|
+
success_response(response)
|
11
|
+
end
|
12
|
+
|
13
|
+
def check(body = {}, params = {})
|
14
|
+
response = post_request('check-otp', body: body, params: params)
|
15
|
+
return error_response(response) unless response.success?
|
16
|
+
|
17
|
+
success_response(response)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module VerifyKit
|
4
|
+
module Resources
|
5
|
+
class WhatsApp < VerifyKit::Resources::Base
|
6
|
+
def send(body = {}, params = {})
|
7
|
+
body[:app] = 'whatsapp'
|
8
|
+
|
9
|
+
response = post_request('start', body: body, params: params)
|
10
|
+
return error_response(response) unless response.success?
|
11
|
+
|
12
|
+
success_response(response)
|
13
|
+
end
|
14
|
+
|
15
|
+
def check(body = {}, params = {})
|
16
|
+
response = post_request('check-whatsapp', body: body, params: params)
|
17
|
+
return error_response(response) unless response.success?
|
18
|
+
|
19
|
+
success_response(response)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/lib/verify_kit/version.rb
CHANGED
data/lib/verify_kit.rb
CHANGED
@@ -1,8 +1,30 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
require 'zeitwerk'
|
4
|
+
require 'logger'
|
5
|
+
require 'dry-configurable'
|
6
|
+
require 'dry/configurable/test_interface'
|
7
|
+
|
8
|
+
loader = Zeitwerk::Loader.for_gem.tap do |l|
|
9
|
+
l.inflector.inflect(
|
10
|
+
'sms' => 'SMS',
|
11
|
+
'Sms' => 'SMS',
|
12
|
+
'whatsapp' => 'WhatsApp',
|
13
|
+
'Whatsapp' => 'WhatsApp'
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
loader.setup
|
4
18
|
|
5
19
|
module VerifyKit
|
6
|
-
|
7
|
-
|
20
|
+
extend Dry::Configurable
|
21
|
+
|
22
|
+
enable_test_interface
|
23
|
+
|
24
|
+
setting :server_key, default: nil, reader: true
|
25
|
+
setting :api_version, default: 'v1.0', reader: true
|
26
|
+
setting :logger, default: Logger.new($stdout), reader: true
|
27
|
+
setting :debug do
|
28
|
+
setting :enabled, default: false, reader: true
|
29
|
+
end
|
8
30
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: verifykit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nejdetkadir
|
@@ -9,7 +9,135 @@ autorequire:
|
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
11
|
date: 2023-05-09 00:00:00.000000000 Z
|
12
|
-
dependencies:
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: faraday
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.7'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 2.7.4
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '2.7'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.7.4
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: dry-initializer
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '3.1'
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 3.1.1
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '3.1'
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 3.1.1
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: dry-monads
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '1.6'
|
60
|
+
type: :runtime
|
61
|
+
prerelease: false
|
62
|
+
version_requirements: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - "~>"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '1.6'
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
name: dry-struct
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - "~>"
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '1.6'
|
74
|
+
type: :runtime
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - "~>"
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '1.6'
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: dry-types
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - "~>"
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '1.7'
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 1.7.1
|
91
|
+
type: :runtime
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - "~>"
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '1.7'
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: 1.7.1
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: dry-configurable
|
103
|
+
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirements:
|
105
|
+
- - "~>"
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: '1.0'
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.0.1
|
111
|
+
type: :runtime
|
112
|
+
prerelease: false
|
113
|
+
version_requirements: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '1.0'
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: 1.0.1
|
121
|
+
- !ruby/object:Gem::Dependency
|
122
|
+
name: zeitwerk
|
123
|
+
requirement: !ruby/object:Gem::Requirement
|
124
|
+
requirements:
|
125
|
+
- - "~>"
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: '2.6'
|
128
|
+
- - ">="
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: 2.6.8
|
131
|
+
type: :runtime
|
132
|
+
prerelease: false
|
133
|
+
version_requirements: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - "~>"
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '2.6'
|
138
|
+
- - ">="
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: 2.6.8
|
13
141
|
description: Ruby bindings for VerifyKit REST API. VerifyKit is a service that offers
|
14
142
|
alternative channels alongside SMS for phone number verification and it enables
|
15
143
|
your users to log in or sign up to your apps quickly.
|
@@ -29,6 +157,15 @@ files:
|
|
29
157
|
- Rakefile
|
30
158
|
- docs/cover.png
|
31
159
|
- lib/verify_kit.rb
|
160
|
+
- lib/verify_kit/client.rb
|
161
|
+
- lib/verify_kit/core/service.rb
|
162
|
+
- lib/verify_kit/resources/base.rb
|
163
|
+
- lib/verify_kit/resources/sms.rb
|
164
|
+
- lib/verify_kit/resources/whatsapp.rb
|
165
|
+
- lib/verify_kit/responses/base.rb
|
166
|
+
- lib/verify_kit/responses/error.rb
|
167
|
+
- lib/verify_kit/responses/success.rb
|
168
|
+
- lib/verify_kit/types.rb
|
32
169
|
- lib/verify_kit/version.rb
|
33
170
|
- sig/verifykit.rbs
|
34
171
|
homepage: https://github.com/nejdetkadir/verifykit
|