mekari_sso 2.0.1 → 2.0.3

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: 36b200ef055564b494b0fca63ee3009c4f831ee4f34a9921062828fad0ecbce1
4
- data.tar.gz: f4d27cb6456ac880345a5168fe66ae9a1be193487085cb8894d59af695ae8a61
3
+ metadata.gz: 1fb526d7323a4025af53b7197c37249cd1afce763afcfa9d8e7e4e7af1f81b96
4
+ data.tar.gz: a7e927856079b6ab2450ee4e514faacb3ba0dcba1e3a6a8d541619bf9d53d9e7
5
5
  SHA512:
6
- metadata.gz: 958047d8cfdf7e1c240fbbb0e1f52c065a90812182388f9517982654f14bf406d4c4d8253193a192e9ef03f12172665f2b16a4701f84534bfac9dc8477823f01
7
- data.tar.gz: 948a2b152cb3bc7a491b2bd8b74f2ad3d062c181f358560d01fab0d8b865725953311886f5e161e1063c6bb3f387a9a40c101c5f05965f9ab79f5fb59c4bcb78
6
+ metadata.gz: ba67d7ca40f205ce3aea96009382d0527a187a480ae0ad4f81ad8e2a28c800843553ffa6528c93f00c1af1e26d57b61fa414c4e944dcccaad19987e0c0bb6013
7
+ data.tar.gz: 0f3a675c859b30777f99d01a1a7ba99dfdf2551fb8ccf92760e24a5271707f91bdfb2bf0083281dd17227943af92c7cb8685924c75378eb1ae9e49c75329e5a2
data/lib/config.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  module MekariSso
4
4
  class Config
5
- attr_accessor :client_id, :client_secret, :base_url, :access_token, :accept_language
5
+ attr_accessor :client_id, :client_secret, :base_url, :access_token, :accept_language, :scope
6
6
 
7
7
  # AVAILABLE_KEYS = %i[client_id client_secret base_url access_token accept_language].freeze
8
8
 
data/lib/mekari_sso.rb CHANGED
@@ -6,6 +6,7 @@ require 'requests/check_user_existence'
6
6
  require 'requests/cities'
7
7
  require 'requests/companies_of_user'
8
8
  require 'requests/companies'
9
+ require 'requests/company_current_of_user'
9
10
  require 'requests/company_member'
10
11
  require 'requests/current_user'
11
12
  require 'requests/current_company'
@@ -23,6 +24,7 @@ require 'requests/remove_company'
23
24
  require 'requests/remove_user_from_company'
24
25
  require 'requests/update_user'
25
26
  require 'requests/update_avatar'
27
+ require 'requests/update_company'
26
28
  require 'requests/verify_email_user'
27
29
  require 'requests/validate_password'
28
30
 
@@ -32,7 +34,9 @@ require 'params/user_register'
32
34
  require 'params/company_of_user'
33
35
  require 'params/company_register'
34
36
  require 'params/company_remove'
37
+ require 'params/company_update'
35
38
  require 'params/company'
39
+ require 'params/current_company_of_user'
36
40
  require 'params/industry'
37
41
  require 'params/province'
38
42
  require 'params/remove_user_company'
@@ -110,6 +114,14 @@ module MekariSso
110
114
  sender >> MekariSso::RegisterCompany.new(@options, company)
111
115
  end
112
116
 
117
+ def update_company(params = {})
118
+ company = MekariSso::CompanyUpdate.new(params)
119
+ company.validate_required!
120
+
121
+ sender = MekariSso::Sender.new
122
+ sender >> MekariSso::UpdateCompany.new(@options, company)
123
+ end
124
+
113
125
  def remove_company(params)
114
126
  company = MekariSso::CompanyRemove.new(params)
115
127
  company.validate_required!
@@ -221,5 +233,13 @@ module MekariSso
221
233
  sender = MekariSso::Sender.new
222
234
  sender >> MekariSso::CompaniesOfUser.new(@options, company)
223
235
  end
236
+
237
+ def current_company_of_user(params)
238
+ company = MekariSso::CurrentCompanyOfUser.new(params)
239
+ company.validate_required!
240
+
241
+ sender = MekariSso::Sender.new
242
+ sender >> MekariSso::CompanyCurrentOfUser.new(@options, company)
243
+ end
224
244
  end
225
245
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'config'
4
+
5
+ module MekariSso
6
+ class CompanyUpdate < MekariSso::CompanyRegister
7
+ attr_accessor :name, :email, :industry_id, :industry_name, :user_id, :brand_name, :main_address, :access_token,
8
+ :secondary_address, :phone, :tax_name, :tax_number, :billing_name, :billing_email, :billing_phone,
9
+ :company_id
10
+
11
+ def initialize(options = nil)
12
+ apply(options) if options
13
+ end
14
+
15
+ def available_keys
16
+ super + %i[company_id]
17
+ end
18
+
19
+ def validate_required!
20
+ unless @name.present?
21
+ raise ArgumentError, "Params name is required options"
22
+ end
23
+
24
+ unless @email.present?
25
+ raise ArgumentError, "Params email is required options"
26
+ end
27
+
28
+ unless @user_id.present?
29
+ raise ArgumentError, "Params user_id is required options"
30
+ end
31
+
32
+ unless @company_id.present?
33
+ raise ArgumentError, "Params company_id is required options"
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'config'
4
+
5
+ module MekariSso
6
+ class CurrentCompanyOfUser < MekariSso::CompanyOfUser
7
+ end
8
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require_relative 'http_request'
5
+
6
+ module MekariSso
7
+ class CompanyCurrentOfUser < 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 headers_request
17
+ headers.merge({
18
+ authorization: "Bearer #{@params.access_token}",
19
+ accept_language: @config.accept_language
20
+ })
21
+ end
22
+
23
+ def send
24
+ RestClient.get "#{@config.base_url}/v1.1/users/#{@params.user_id}/current_company", headers_request
25
+ end
26
+ end
27
+
28
+ end
@@ -17,7 +17,7 @@ module MekariSso
17
17
  client_id: @config.client_id,
18
18
  client_secret: @config.client_secret,
19
19
  grant_type: 'client_credentials',
20
- scope: 'sso:profile'
20
+ scope: @config.scope || 'sso:profile'
21
21
  }
22
22
  end
23
23
 
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require_relative 'http_request'
5
+
6
+ module MekariSso
7
+ class UpdateCompany < 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
+ name: @params.name,
19
+ email: @params.email,
20
+ industry_id: @params.industry_id,
21
+ industry_name: @params.industry_name,
22
+ user_id: @params.user_id,
23
+ brand_name: @params.brand_name,
24
+ main_address: @params.main_address,
25
+ secondary_address: @params.secondary_address,
26
+ phone: @params.phone,
27
+ tax_name: @params.tax_name,
28
+ tax_number: @params.tax_number,
29
+ billing_name: @params.billing_name,
30
+ billing_email: @params.billing_email,
31
+ billing_phone: @params.billing_phone
32
+ }
33
+ end
34
+
35
+ def headers_request
36
+ headers.merge({
37
+ authorization: "Bearer #{@params.access_token}",
38
+ accept_language: @config.accept_language
39
+ })
40
+ end
41
+
42
+ def send
43
+ RestClient.put "#{@config.base_url}/v1/companies/#{@params.company_id}", params, headers_request
44
+ end
45
+ end
46
+
47
+ 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: 2.0.1
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - WSPDV
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-08 00:00:00.000000000 Z
11
+ date: 2023-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -86,6 +86,8 @@ files:
86
86
  - lib/params/company_of_user.rb
87
87
  - lib/params/company_register.rb
88
88
  - lib/params/company_remove.rb
89
+ - lib/params/company_update.rb
90
+ - lib/params/current_company_of_user.rb
89
91
  - lib/params/industry.rb
90
92
  - lib/params/list.rb
91
93
  - lib/params/province.rb
@@ -101,6 +103,7 @@ files:
101
103
  - lib/requests/cities.rb
102
104
  - lib/requests/companies.rb
103
105
  - lib/requests/companies_of_user.rb
106
+ - lib/requests/company_current_of_user.rb
104
107
  - lib/requests/company_member.rb
105
108
  - lib/requests/current_company.rb
106
109
  - lib/requests/current_user.rb
@@ -118,6 +121,7 @@ files:
118
121
  - lib/requests/revoke.rb
119
122
  - lib/requests/sender.rb
120
123
  - lib/requests/update_avatar.rb
124
+ - lib/requests/update_company.rb
121
125
  - lib/requests/update_user.rb
122
126
  - lib/requests/validate_password.rb
123
127
  - lib/requests/verify_email_user.rb
@@ -140,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
144
  - !ruby/object:Gem::Version
141
145
  version: '0'
142
146
  requirements: []
143
- rubygems_version: 3.2.32
147
+ rubygems_version: 3.4.14
144
148
  signing_key:
145
149
  specification_version: 4
146
150
  summary: support mekari sso