microkit-ruby-sdk 0.1.10 → 0.1.11

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: 5d1730cdc763efec6c3774d0a1ad1a46c83dee19c8dde1ab1e37a1539c70f4c0
4
- data.tar.gz: 0252a418af68ee8cfbe36ebf73d36fcca4be42386230f0f280cfac0e1b50f18e
3
+ metadata.gz: 5273f1616cae0d00ef9f6cf17744af23e1e21a374940de32d0235f4ded60723e
4
+ data.tar.gz: 654071429aa46a84d357e2371c4b672514925c4e2c92bda6b6e55b2214c0d308
5
5
  SHA512:
6
- metadata.gz: 34153d489e3af982538d8abae50129c5c680b9f08b3dee5048c596524a1f54365be04ac1ac079c9e858609d303e82f0b16592b7706a5aada428d353ff538cbc2
7
- data.tar.gz: 066f6a7769ceb26baf3d0402802a367a1889c6237834cdb4aa840dad9adaef8c79c0004aefc93654aea2601f862aea005f1764c2662eba7570772e5f2a651bbe
6
+ metadata.gz: 0cfd1cf85d2e34b57e6f2313756410f54de408f48ae85c782fb8aed3254df34c3f83835ada74b616f01b5d7f5eb183a959573510e1723df7cb50c562eed3dc0f
7
+ data.tar.gz: 37793c7be0cefed4be757c323190558284e967d94c7aae032e8a6d278caad8fa7f6a2826a380d26f393a3d46c3866f04c7900a638f48f737b32573c424602844
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- microkit-ruby-sdk (0.1.0)
4
+ microkit-ruby-sdk (0.1.10)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -18,14 +18,14 @@ module Microkit
18
18
  # Microkit.instance.features_kit = Group('features', res["features"] if 'features' in res and type(res["features"]) == dict else {})
19
19
  res = NetworkController.instance.get_latest_data('init')
20
20
  res = JSON.parse(res)
21
- config = JSON.parse(self.decrypt(res["config"], secret))
21
+ config = JSON.parse(self.decrypt(self.clean_base64_padding(res["config"]), secret))
22
22
  Config.instance.set("key_vars_values", res["key_vars_values"])
23
23
  Microkit.instance.instance_variable_set("@config_kit", Group.new("config", config))
24
24
  Microkit.instance.instance_variable_set("@features_kit", Group.new("features", res["features"]))
25
- Microkit.instance.instance_variable_set("@permit", Permit.new(config))
25
+ Microkit.instance.instance_variable_set("@permissions_kit", Permit.new(Config.instance))
26
26
  Microkit.instance.class.module_eval { attr_accessor :config_kit}
27
27
  Microkit.instance.class.module_eval { attr_accessor :features_kit}
28
- Microkit.instance.class.module_eval { attr_accessor :permit}
28
+ Microkit.instance.class.module_eval { attr_accessor :permissions_kit}
29
29
  published = Proc.new do |current_val, prev_val|
30
30
  res = JSON.parse(current_val)
31
31
  config = JSON.parse(self.decrypt(res["config"], secret))
@@ -61,6 +61,9 @@ module Microkit
61
61
  decrypted = cipher.update(encrypted) + cipher.final
62
62
  return decrypted
63
63
  end
64
+ def self.clean_base64_padding(base64_string)
65
+ base64_string.end_with?("==") ? base64_string[0..-3] : base64_string
66
+ end
64
67
  class Microkit
65
68
  include Singleton
66
69
  attr_accessor :subscription
@@ -0,0 +1,26 @@
1
+
2
+ module Microkit
3
+ class Permit
4
+ def initialize(config)
5
+ @config = config
6
+ end
7
+
8
+ def permit(method, path, role, data = {})
9
+ project_id = @config.get('key_vars_values')['project_id']
10
+ service = @config.get('service') || ''
11
+
12
+ params = {
13
+ 'project_id' => project_id,
14
+ 'method' => method,
15
+ 'path' => path,
16
+ 'role' => role,
17
+ 'data' => data,
18
+ 'service' => service
19
+ }
20
+
21
+ res = HttpClient.instance.post('check_permissions', 'permit', params)
22
+ res = JSON.parse(res.to_s, symbolize_names: true)
23
+ res[:permit] || false
24
+ end
25
+ end
26
+ end
@@ -1,3 +1,3 @@
1
1
  module Microkit
2
- VERSION = "0.1.10"
2
+ VERSION = "0.1.11"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microkit-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - chaimvaid
@@ -77,6 +77,7 @@ files:
77
77
  - lib/microkit/item.rb
78
78
  - lib/microkit/microkit.rb
79
79
  - lib/microkit/network_controller.rb
80
+ - lib/microkit/permit.rb
80
81
  - lib/microkit/publisher.rb
81
82
  - lib/microkit/version.rb
82
83
  - microkit-ruby-sdk.gemspec