mekari_sso 0.0.1.6 → 0.0.1.7

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: 9be084567d981280cebabaee82018bbf4a69ec4cdfdb6bbd400bccc585deade2
4
- data.tar.gz: e67b2617867bdbb62ce1d0a7f007311c47ae10f8979d3155b20d8b7303fc1106
3
+ metadata.gz: 02a789d6e10a3a5cc60dbab56d604901d39925bce3149235edb7146fa83ae72a
4
+ data.tar.gz: 86c6b9e5a897f73726c80059aa7fb5cf62384dc2d0bbaea6747cc747b2bf5e4b
5
5
  SHA512:
6
- metadata.gz: 845a9f57796761788bdb6bbe8c2759838f78bd8fd8d8af875c1c1d95cec3e3949ae5650173869953b70f1032e8f658bad2a83f5072b24f24b18a60395b6b9ac6
7
- data.tar.gz: 4dcbe05224c0edc21fb4b594c3274542f6e6e9cab110c3b0545b437ebb01f7cde636ff8488115562bdbeba4dc095e323fb5f58e903bf6e5652cecef450fca652
6
+ metadata.gz: f5a44a965734942cf2b1f3fe00f96e7fed17911f9a91f4f7e899405575ed23eb57a7bd4955b34b2f10f5017d9964f73727205be78f4970f35af45014ef769952
7
+ data.tar.gz: 2e91276c59b412d635232de59dd4493ca070cc201483f6b12f1c7fbd3824bc91aa444a478196eefbd13a4202b1e8adfe12654f2742229fcaff4e08d287219998
data/lib/mekari_sso.rb CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative 'config'
4
4
  require 'requests/add_user_to_company'
5
+ require 'requests/check_user_existence'
5
6
  require 'requests/cities'
6
7
  require 'requests/companies'
7
8
  require 'requests/company_member'
@@ -32,6 +33,7 @@ require 'params/company'
32
33
  require 'params/province'
33
34
  require 'params/remove_user_company'
34
35
  require 'params/list'
36
+ require 'params/user_existence'
35
37
  require 'params/user_update'
36
38
  require 'params/user_avatar'
37
39
  require 'params/user_verify_email'
@@ -187,5 +189,13 @@ module MekariSso
187
189
  sender = MekariSso::Sender.new
188
190
  sender >> MekariSso::VerifyEmailUser.new(@options, user)
189
191
  end
192
+
193
+ def existence_user(params)
194
+ user = MekariSso::UserExistence.new(params)
195
+ user.validate_required!
196
+
197
+ sender = MekariSso::Sender.new
198
+ sender >> MekariSso::CheckUserExistence.new(@options, user)
199
+ end
190
200
  end
191
201
  end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'config'
4
+
5
+ module MekariSso
6
+ class UserExistence < MekariSso::Config
7
+ attr_accessor :key, :value, :access_token
8
+
9
+ def initialize(options = nil)
10
+ apply(options) if options
11
+ end
12
+
13
+ def available_keys
14
+ %i[key value access_token]
15
+ end
16
+
17
+ def validate_required!
18
+ unless @key.present?
19
+ raise ArgumentError, "Params key is required options"
20
+ end
21
+
22
+ unless @value.present?
23
+ raise ArgumentError, "Params value is required options"
24
+ end
25
+
26
+ unless @access_token.present?
27
+ raise ArgumentError, "Params access_token is required options"
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require 'cgi'
5
+ require 'uri'
6
+ require_relative 'http_request'
7
+
8
+ module MekariSso
9
+ class CheckUserExistence < MekariSso::HttpRequest
10
+
11
+ attr_reader :config, :params
12
+
13
+ def initialize(config, params)
14
+ @config = config
15
+ @params = params
16
+ end
17
+
18
+ def params
19
+ {
20
+ attr_key: @params.key,
21
+ attr_value: @params.value,
22
+ }
23
+ end
24
+
25
+ def headers_request
26
+ headers.merge({
27
+ authorization: "Bearer #{@params.access_token}"
28
+ })
29
+ end
30
+
31
+ def send
32
+ url = URI("#{@config.base_url}/v1/users/check")
33
+ url.query = URI.encode_www_form(params)
34
+ # url = URI("#{@config.base_url}/v1/users/check?attr_key=#{@params.key}&attr_value=#{CGI.escape(@params.value)}")
35
+
36
+ RestClient.get url.to_s, headers_request
37
+ end
38
+ end
39
+
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mekari_sso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.6
4
+ version: 0.0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - WSPDV
@@ -44,6 +44,20 @@ dependencies:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: 2.6.1
47
+ - !ruby/object:Gem::Dependency
48
+ name: uri
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: rspec
49
63
  requirement: !ruby/object:Gem::Requirement
@@ -75,10 +89,12 @@ files:
75
89
  - lib/params/province.rb
76
90
  - lib/params/remove_user_company.rb
77
91
  - lib/params/user_avatar.rb
92
+ - lib/params/user_existence.rb
78
93
  - lib/params/user_register.rb
79
94
  - lib/params/user_update.rb
80
95
  - lib/params/user_verify_email.rb
81
96
  - lib/requests/add_user_to_company.rb
97
+ - lib/requests/check_user_existence.rb
82
98
  - lib/requests/cities.rb
83
99
  - lib/requests/companies.rb
84
100
  - lib/requests/company_member.rb