mekari_sso 0.0.1.5 → 0.0.1.8

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: 6c098d8be18851ce75ba104d1222fe458a94e6cbc0550aa4b5e39044b618f08b
4
- data.tar.gz: 442811bd5ef6c8a60b5c492396280ff202f081455db0a513bbaf7dd3337271be
3
+ metadata.gz: ec235424a2e0e3e9e29c2c1bf598188fa7c8a5b86d7fa68e9cf4337e50bcca80
4
+ data.tar.gz: 303bb56f7d33cba697741df85fd41e1cc5f923d5cd121a66fb8db85bf8139e14
5
5
  SHA512:
6
- metadata.gz: 07dda5783020f080843f24f79bd243dd079ccc6f8cb330de7f6ea8cb2f820f2c65a59831a5ab48402dfd9b352b370c0bb4303fd7074031a4cf923244ee6fc0c7
7
- data.tar.gz: ae032b080d461f9cb2fa83b144663e0aec0c0b464e3f394d0e8e58453ea1c4a51bce06b45f9e5dda830043ed54f394c4e952fa294089abf7c18aaac1b8c5dd99
6
+ metadata.gz: 307272c6cbfba9a4d5b6f9b002b1235bc21dad7c39575fa8dc49bd6fa416f49263cfa862298c895cd5129ffab126c5b90bac76c49b671a83dc8248753142597c
7
+ data.tar.gz: 7568ac44d449479fa21dd9b799a472bbfc061eee542b12c966f9e1de4818139c22a4d75506633816bb85b841e155f1f70085963974a07632f8aec86ec2d1831a
data/lib/mekari_sso.rb CHANGED
@@ -2,10 +2,12 @@
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'
8
9
  require 'requests/current_user'
10
+ require 'requests/current_company'
9
11
  require 'requests/generate_credential_client'
10
12
  require 'requests/generate_credential_code'
11
13
  require 'requests/industries'
@@ -21,6 +23,7 @@ require 'requests/remove_user_from_company'
21
23
  require 'requests/update_user'
22
24
  require 'requests/update_avatar'
23
25
  require 'requests/verify_email_user'
26
+ require 'requests/validate_password'
24
27
 
25
28
  require 'params/add_user_company'
26
29
  require 'params/city'
@@ -31,9 +34,11 @@ require 'params/company'
31
34
  require 'params/province'
32
35
  require 'params/remove_user_company'
33
36
  require 'params/list'
37
+ require 'params/user_existence'
34
38
  require 'params/user_update'
35
39
  require 'params/user_avatar'
36
40
  require 'params/user_verify_email'
41
+ require 'params/validate_password'
37
42
 
38
43
 
39
44
  require 'active_support'
@@ -73,6 +78,11 @@ module MekariSso
73
78
  sender >> MekariSso::CurrentUser.new(@options, token)
74
79
  end
75
80
 
81
+ def current_company(token)
82
+ sender = MekariSso::Sender.new
83
+ sender >> MekariSso::CurrentCompany.new(@options, token)
84
+ end
85
+
76
86
  def industries(token)
77
87
  sender = MekariSso::Sender.new
78
88
  sender >> MekariSso::Industries.new(@options, token)
@@ -181,5 +191,21 @@ module MekariSso
181
191
  sender = MekariSso::Sender.new
182
192
  sender >> MekariSso::VerifyEmailUser.new(@options, user)
183
193
  end
194
+
195
+ def existence_user(params)
196
+ user = MekariSso::UserExistence.new(params)
197
+ user.validate_required!
198
+
199
+ sender = MekariSso::Sender.new
200
+ sender >> MekariSso::CheckUserExistence.new(@options, user)
201
+ end
202
+
203
+ def validate_password(params)
204
+ password = MekariSso::ValidatePassword.new(params)
205
+ password.validate_required!
206
+
207
+ sender = MekariSso::Sender.new
208
+ sender >> MekariSso::ValidatePassword.new(@options, password)
209
+ end
184
210
  end
185
211
  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,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'config'
4
+ require_relative 'user_register'
5
+
6
+ module MekariSso
7
+ class ValidatePassword < MekariSso::Config
8
+ attr_accessor :password, :access_token, :user_id
9
+
10
+ def initialize(options = nil)
11
+ apply(options) if options
12
+ end
13
+
14
+ def available_keys
15
+ %i[user_id access_token password]
16
+ end
17
+
18
+ def validate_required!
19
+ unless @access_token.present?
20
+ raise ArgumentError, "Params access_token is required options"
21
+ end
22
+
23
+ unless @user_id.present?
24
+ raise ArgumentError, "Params user_id is required options"
25
+ end
26
+
27
+ unless @password.present?
28
+ raise ArgumentError, "Params password is required options"
29
+ end
30
+ end
31
+ end
32
+ 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?attr_key=#{@params.key}&attr_value=#{CGI.escape(@params.value)}")
33
+ url = URI("#{@config.base_url}/v1/users/check")
34
+ url.query = URI.encode_www_form(params)
35
+
36
+ RestClient.get url.to_s, headers_request
37
+ end
38
+ end
39
+
40
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require_relative 'http_request'
5
+
6
+ module MekariSso
7
+ class CurrentCompany < MekariSso::HttpRequest
8
+
9
+ attr_reader :config, :token
10
+
11
+ def initialize(config, token)
12
+ @config = config
13
+ @token = token
14
+ end
15
+
16
+ def headers_request
17
+ headers.merge({
18
+ authorization: "Bearer #{@token}"
19
+ })
20
+ end
21
+
22
+ def send
23
+ RestClient.get "#{@config.base_url}/v1.1/users/me/current_company", headers_request
24
+ end
25
+ end
26
+
27
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require_relative 'http_request'
5
+
6
+ module MekariSso
7
+ class ValidatePassword < MekariSso::HttpRequest
8
+
9
+ attr_reader :config, :params
10
+
11
+ def initialize(config, params)
12
+ @config = config
13
+ @params = params
14
+ end
15
+
16
+ def params
17
+ {
18
+ id: @params.user_id,
19
+ password: @params.password
20
+ }
21
+ end
22
+
23
+ def headers_request
24
+ headers.merge({
25
+ authorization: "Bearer #{@params.access_token}"
26
+ })
27
+ end
28
+
29
+ def send
30
+ RestClient.put "#{@config.base_url}/v1.1/users/authenticate", params, headers_request
31
+ end
32
+ end
33
+
34
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mekari_sso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.5
4
+ version: 0.0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - WSPDV
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-28 00:00:00.000000000 Z
11
+ date: 2022-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -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,13 +89,17 @@ 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
96
+ - lib/params/validate_password.rb
81
97
  - lib/requests/add_user_to_company.rb
98
+ - lib/requests/check_user_existence.rb
82
99
  - lib/requests/cities.rb
83
100
  - lib/requests/companies.rb
84
101
  - lib/requests/company_member.rb
102
+ - lib/requests/current_company.rb
85
103
  - lib/requests/current_user.rb
86
104
  - lib/requests/generate_credential_client.rb
87
105
  - lib/requests/generate_credential_code.rb
@@ -98,6 +116,7 @@ files:
98
116
  - lib/requests/sender.rb
99
117
  - lib/requests/update_avatar.rb
100
118
  - lib/requests/update_user.rb
119
+ - lib/requests/validate_password.rb
101
120
  - lib/requests/verify_email_user.rb
102
121
  homepage: https://gitlab.com/dwiheruwaspodo/mekari_sso
103
122
  licenses:
@@ -118,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
137
  - !ruby/object:Gem::Version
119
138
  version: '0'
120
139
  requirements: []
121
- rubygems_version: 3.3.6
140
+ rubygems_version: 3.2.22
122
141
  signing_key:
123
142
  specification_version: 4
124
143
  summary: support mekari sso