mekari_sso 0.0.1.5 → 0.0.1.8

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: 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