mints 0.0.1
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 +7 -0
- data/Gemfile +5 -0
- data/Readme.md +32 -0
- data/lib/client.rb +224 -0
- data/lib/contact.rb +78 -0
- data/lib/mints.rb +5 -0
- data/lib/pub.rb +50 -0
- data/lib/user.rb +175 -0
- metadata +109 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 74526a6438b7de0c89f91b1d7c14b8e34a77c139f911783cfe37437eb6c32b20
|
4
|
+
data.tar.gz: cef5273897e15545fe8a1f831fbbe1069cb1c4c2a14486221bdea94f3f70e6bb
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f7da303e2dd55c10fb990d17a49628a99d95c8a3e06985cecc4e80d23784abe4c131afd6a16ff4780d639813ccbb0c0e5c6f75732b294f5a4a8cc9f607378d44
|
7
|
+
data.tar.gz: f521865904561b3c73e82ae099ca39dfdd9af23e424faf9cb4a1e219676e8d5eeb43426a6a1623a7f44e4bac88dbcf9603a786953f9d56c7a0a0527c6f41fc29
|
data/Gemfile
ADDED
data/Readme.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# Mints Ruby SDK
|
2
|
+
|
3
|
+
This is a library to connect apps built on ruby to Mints.Cloud
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add gem to the Gemfile
|
8
|
+
```bash
|
9
|
+
gem 'mints', git: 'https://github.com/rubengomez/mints-ruby-sdk'
|
10
|
+
bundle install
|
11
|
+
```
|
12
|
+
|
13
|
+
## Usage
|
14
|
+
Using Mints Public API
|
15
|
+
```ruby
|
16
|
+
pub = Mints::Pub.new(mints_url, api_key)
|
17
|
+
pub.get_stories
|
18
|
+
```
|
19
|
+
|
20
|
+
Using Mints Contact API
|
21
|
+
```ruby
|
22
|
+
con = Mints::Contact.new(mints_url, api_key)
|
23
|
+
con.login(email, password)
|
24
|
+
con.me
|
25
|
+
```
|
26
|
+
|
27
|
+
Using Mints User API
|
28
|
+
```ruby
|
29
|
+
con = Mints::User.new(mints_url, api_key)
|
30
|
+
con.login(email, password)
|
31
|
+
con.get_contacts
|
32
|
+
```
|
data/lib/client.rb
ADDED
@@ -0,0 +1,224 @@
|
|
1
|
+
require "httparty"
|
2
|
+
require "json"
|
3
|
+
require "addressable"
|
4
|
+
module Mints
|
5
|
+
class Client
|
6
|
+
attr_reader :host
|
7
|
+
attr_reader :api_key
|
8
|
+
attr_reader :scope
|
9
|
+
attr_reader :base_url
|
10
|
+
attr_accessor :session_token
|
11
|
+
|
12
|
+
def initialize(host, api_key, scope = nil, session_token = nil)
|
13
|
+
@host = host
|
14
|
+
@api_key = api_key
|
15
|
+
@session_token = session_token
|
16
|
+
self.set_scope(scope)
|
17
|
+
end
|
18
|
+
|
19
|
+
def raw(action, url, data = nil, base_url = nil)
|
20
|
+
base_url = @base_url if !base_url
|
21
|
+
full_url = "#{@host}#{base_url}#{url}"
|
22
|
+
p full_url
|
23
|
+
if action === 'get'
|
24
|
+
response = self.send("#{@scope}_#{action}", full_url)
|
25
|
+
elsif action === 'create' or action === 'post'
|
26
|
+
action = 'post'
|
27
|
+
response = self.send("#{@scope}_#{action}", full_url, data)
|
28
|
+
elsif action === 'put' or action === 'patch' or action ==='update'
|
29
|
+
action = 'put'
|
30
|
+
response = self.send("#{@scope}_#{action}", full_url, data)
|
31
|
+
end
|
32
|
+
if (response.response.code == "404")
|
33
|
+
raise 'NotFoundError'
|
34
|
+
end
|
35
|
+
parsed_response = JSON.parse(response.body)
|
36
|
+
if parsed_response.key?('data')
|
37
|
+
return parsed_response['data']
|
38
|
+
end
|
39
|
+
return parsed_response
|
40
|
+
end
|
41
|
+
|
42
|
+
def method_missing(name, *args, &block)
|
43
|
+
name.to_s.include?("__") ? separator = "__" : separator = "_"
|
44
|
+
# split the name to identify their elements
|
45
|
+
name_spplited = name.to_s.split(separator)
|
46
|
+
# count the elments
|
47
|
+
name_len = name_spplited.size
|
48
|
+
# the action always be the first element
|
49
|
+
action = name_spplited.first
|
50
|
+
raise 'NoActionError' unless ['get', 'create', 'post', 'update', 'put'].include?(action)
|
51
|
+
# the object always be the last element
|
52
|
+
object = separator == "__" ? name_spplited.last.gsub("_","-") : name_spplited.last
|
53
|
+
# get intermediate url elements
|
54
|
+
route_array = []
|
55
|
+
(name_len-1).times do |n|
|
56
|
+
if n == 0 or n == name_len-1
|
57
|
+
next
|
58
|
+
end
|
59
|
+
n = name_spplited[n]
|
60
|
+
self.replacements().each do |object|
|
61
|
+
n = n.gsub(object[:old_value], object[:new_value])
|
62
|
+
end
|
63
|
+
route_array.push n
|
64
|
+
end
|
65
|
+
route = route_array.join("/")
|
66
|
+
if args.first.class == Hash
|
67
|
+
uri = Addressable::URI.new
|
68
|
+
uri.query_values = args.first if action === 'get'
|
69
|
+
elsif args.first.class == String or Integer
|
70
|
+
slug = args.first
|
71
|
+
uri = Addressable::URI.new
|
72
|
+
uri.query_values = args[1] if action === 'get'
|
73
|
+
end
|
74
|
+
if (slug)
|
75
|
+
url = "#{@host}#{@base_url}/#{route}/#{object}/#{slug}#{uri}"
|
76
|
+
else
|
77
|
+
url = "#{@host}#{@base_url}/#{route}/#{object}#{uri}"
|
78
|
+
end
|
79
|
+
if action === 'get'
|
80
|
+
response = self.send("#{@scope}_#{action}", url)
|
81
|
+
elsif action === 'post' or action === 'create'
|
82
|
+
action = 'post'
|
83
|
+
data = args[0]
|
84
|
+
response = self.send("#{@scope}_#{action}", url, {data: data})
|
85
|
+
elsif action === 'put' or action === 'update'
|
86
|
+
action = 'put'
|
87
|
+
id = args[0]
|
88
|
+
data = args[1]
|
89
|
+
response = self.send("#{@scope}_#{action}", "#{url}", data)
|
90
|
+
end
|
91
|
+
p url
|
92
|
+
if (response.response.code == "404")
|
93
|
+
raise 'NotFoundError'
|
94
|
+
end
|
95
|
+
return JSON.parse(response.body)
|
96
|
+
end
|
97
|
+
|
98
|
+
def replacements
|
99
|
+
return [
|
100
|
+
{old_value: '_', new_value: '-'},
|
101
|
+
{old_value: 'people', new_value: 'crm'},
|
102
|
+
{old_value: 'store', new_value: 'ecommerce'}
|
103
|
+
]
|
104
|
+
end
|
105
|
+
|
106
|
+
def set_scope(scope)
|
107
|
+
@scope = scope
|
108
|
+
if scope == "public"
|
109
|
+
@base_url = "/api/v1"
|
110
|
+
elsif scope == "contact"
|
111
|
+
@base_url = "/api/v1"
|
112
|
+
elsif scope == "user"
|
113
|
+
@base_url = "/api/user/v1"
|
114
|
+
else
|
115
|
+
@scope = "public"
|
116
|
+
@base_url = "/api/v1"
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
##### HTTTP CLIENTS ######
|
121
|
+
# Simple HTTP GET
|
122
|
+
def http_get(url, headers = nil)
|
123
|
+
return headers ? HTTParty.get(url, :headers => headers) : HTTParty.get(url)
|
124
|
+
end
|
125
|
+
|
126
|
+
# Simple HTTP POST
|
127
|
+
def http_post(url, headers = nil, data = nil)
|
128
|
+
return headers ? HTTParty.post(url, :headers=> headers, :body => data) : HTTParty.post(url, :body => data)
|
129
|
+
end
|
130
|
+
|
131
|
+
# Simple HTTP PUT
|
132
|
+
def http_put(url, headers = nil, data = nil)
|
133
|
+
return headers ? HTTParty.put(url, :headers=> headers, :body => data) : HTTParty.put(url, :body => data)
|
134
|
+
end
|
135
|
+
|
136
|
+
# Start contact context
|
137
|
+
def contact_get(url)
|
138
|
+
headers = {
|
139
|
+
"ApiKey" => @api_key,
|
140
|
+
"Accept" => "application/json"
|
141
|
+
}
|
142
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
143
|
+
return self.http_get(url, headers)
|
144
|
+
end
|
145
|
+
|
146
|
+
def contact_post(url, data)
|
147
|
+
headers = {
|
148
|
+
"ApiKey" => @api_key,
|
149
|
+
"Accept" => "application/json"
|
150
|
+
}
|
151
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
152
|
+
return self.http_post(url, headers, data)
|
153
|
+
end
|
154
|
+
|
155
|
+
def contact_put(url, data)
|
156
|
+
headers = {
|
157
|
+
"ApiKey" => @api_key,
|
158
|
+
"Accept" => "application/json"
|
159
|
+
}
|
160
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
161
|
+
return self.http_post(url, headers, data)
|
162
|
+
end
|
163
|
+
|
164
|
+
# Start User context
|
165
|
+
def user_get(url)
|
166
|
+
headers = {
|
167
|
+
"ApiKey" => @api_key,
|
168
|
+
"Accept" => "application/json"
|
169
|
+
}
|
170
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
171
|
+
return self.http_get(url, headers)
|
172
|
+
end
|
173
|
+
|
174
|
+
def user_post(url, data)
|
175
|
+
headers = {
|
176
|
+
"ApiKey" => @api_key,
|
177
|
+
"Accept" => "application/json"
|
178
|
+
}
|
179
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
180
|
+
return self.http_post(url, headers, data)
|
181
|
+
end
|
182
|
+
|
183
|
+
def user_put(url, data)
|
184
|
+
headers = {
|
185
|
+
"ApiKey" => @api_key,
|
186
|
+
"Accept" => "application/json",
|
187
|
+
"Contet-Type" => "application/json"
|
188
|
+
}
|
189
|
+
headers["Authorization"] = "Bearer #{@session_token}" if @session_token
|
190
|
+
return self.http_put(url, headers, data)
|
191
|
+
end
|
192
|
+
# End User Context
|
193
|
+
|
194
|
+
def public_get(url, headers = nil)
|
195
|
+
h = {"Accept" => "application/json", "Contet-Type" => "application/json", "ApiKey" => @api_key}
|
196
|
+
if headers
|
197
|
+
headers.each do |k,v|
|
198
|
+
h[k] = v
|
199
|
+
end
|
200
|
+
end
|
201
|
+
self.http_get(url, h)
|
202
|
+
end
|
203
|
+
|
204
|
+
def public_post(url, headers = nil, data)
|
205
|
+
h = {"Accept" => "application/json", "Contet-Type" => "application/json", "ApiKey" => @api_key}
|
206
|
+
if headers
|
207
|
+
headers.each do |k,v|
|
208
|
+
h[k] = v
|
209
|
+
end
|
210
|
+
end
|
211
|
+
self.http_post(url, h, data)
|
212
|
+
end
|
213
|
+
|
214
|
+
def public_put(url, headers = nil, data)
|
215
|
+
h = {"Accept" => "application/json", "Contet-Type" => "application/json", "ApiKey" => @api_key}
|
216
|
+
if headers
|
217
|
+
headers.each do |k,v|
|
218
|
+
h[k] = v
|
219
|
+
end
|
220
|
+
end
|
221
|
+
self.http_put(url, h, data)
|
222
|
+
end
|
223
|
+
end
|
224
|
+
end
|
data/lib/contact.rb
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
require_relative "./client.rb"
|
2
|
+
module Mints
|
3
|
+
class Contact
|
4
|
+
attr_reader :client
|
5
|
+
def initialize(host, api_key, session_token = nil)
|
6
|
+
@client = Mints::Client.new(host, api_key, "contact", session_token)
|
7
|
+
end
|
8
|
+
|
9
|
+
def register(given_name, last_name, email, password)
|
10
|
+
data = {
|
11
|
+
given_name: given_name,
|
12
|
+
last_name: last_name,
|
13
|
+
email: email,
|
14
|
+
password: password
|
15
|
+
}
|
16
|
+
return @client.raw("post", "/contacts/register", {data: data})
|
17
|
+
end
|
18
|
+
|
19
|
+
def login(email, password)
|
20
|
+
data = {
|
21
|
+
email: email,
|
22
|
+
password: password
|
23
|
+
}
|
24
|
+
response = @client.raw("post", "/contacts/login", {data: data})
|
25
|
+
if response.key? "session_token"
|
26
|
+
@client.session_token = response["session_token"]
|
27
|
+
end
|
28
|
+
return response
|
29
|
+
end
|
30
|
+
|
31
|
+
def logout
|
32
|
+
response = @client.raw("post", "/contacts/logout", nil) if session_token?
|
33
|
+
if response["success"]
|
34
|
+
@client.session_token = nil
|
35
|
+
end
|
36
|
+
return response
|
37
|
+
end
|
38
|
+
|
39
|
+
def change_password
|
40
|
+
return @client.raw("post", "/contacts/change-password", data)
|
41
|
+
end
|
42
|
+
|
43
|
+
def recover_password
|
44
|
+
return @client.raw("post", "/contacts/recover-password", data)
|
45
|
+
end
|
46
|
+
|
47
|
+
def reset_password
|
48
|
+
return @client.raw("post", "/contacts/reset-password", data)
|
49
|
+
end
|
50
|
+
|
51
|
+
def auth_login
|
52
|
+
return @client.raw("post", "/contacts/oauth-login", data)
|
53
|
+
end
|
54
|
+
|
55
|
+
def me
|
56
|
+
return @client.raw("get", "/contacts/me")
|
57
|
+
end
|
58
|
+
|
59
|
+
def status
|
60
|
+
return @client.raw("get", "/contacts/status")
|
61
|
+
end
|
62
|
+
|
63
|
+
def update
|
64
|
+
return @client.raw("put", "/contacts/update", data)
|
65
|
+
end
|
66
|
+
|
67
|
+
private
|
68
|
+
|
69
|
+
def session_token?
|
70
|
+
if @client.session_token
|
71
|
+
return true
|
72
|
+
else
|
73
|
+
raise "Unauthenticated"
|
74
|
+
return false
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
data/lib/mints.rb
ADDED
data/lib/pub.rb
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
require_relative './client.rb'
|
2
|
+
module Mints
|
3
|
+
class Pub
|
4
|
+
attr_reader :client
|
5
|
+
def initialize(host, api_key)
|
6
|
+
@client = Mints::Client.new(host, api_key)
|
7
|
+
end
|
8
|
+
|
9
|
+
def register_visit(ip, user_agent, url)
|
10
|
+
data = {
|
11
|
+
ip_address: ip,
|
12
|
+
user_agent: user_agent,
|
13
|
+
url: url
|
14
|
+
}
|
15
|
+
return @client.raw("post", "/register-visit-timer", data)
|
16
|
+
end
|
17
|
+
|
18
|
+
def register_visit_timer
|
19
|
+
return @client.raw("get", "/register-visit-timer")
|
20
|
+
end
|
21
|
+
|
22
|
+
def get_content_page
|
23
|
+
return @client.raw("get", "/content-pages/#{slug}")
|
24
|
+
end
|
25
|
+
|
26
|
+
def get_content_template
|
27
|
+
return @client.raw("get", "/content/content-templates/#{slug}")
|
28
|
+
end
|
29
|
+
|
30
|
+
def content_instance
|
31
|
+
return @client.raw("get", "/content/content-instances/#{slug}")
|
32
|
+
end
|
33
|
+
|
34
|
+
def get_stories
|
35
|
+
return @client.raw("get", "/content/stories")
|
36
|
+
end
|
37
|
+
|
38
|
+
def get_story(slug)
|
39
|
+
return @client.raw("get", "/content/stories/#{slug}")
|
40
|
+
end
|
41
|
+
|
42
|
+
def get_form
|
43
|
+
return @client.raw("get", "/content/forms/{slug}")
|
44
|
+
end
|
45
|
+
|
46
|
+
def submit_form
|
47
|
+
return @client.raw("post", "/forms/store", data)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
data/lib/user.rb
ADDED
@@ -0,0 +1,175 @@
|
|
1
|
+
require_relative './client.rb'
|
2
|
+
module Mints
|
3
|
+
class User
|
4
|
+
attr_reader :client
|
5
|
+
def initialize(host, api_key, session_token = nil)
|
6
|
+
@client = Mints::Client.new(host, api_key, 'user', session_token)
|
7
|
+
end
|
8
|
+
|
9
|
+
def login(email, password)
|
10
|
+
data = {
|
11
|
+
email: email,
|
12
|
+
password: password,
|
13
|
+
}
|
14
|
+
response = @client.raw("post", "/users/login", data, '/api/v1')
|
15
|
+
if response.key? "api_token"
|
16
|
+
@client.session_token = response["api_token"]
|
17
|
+
end
|
18
|
+
return response
|
19
|
+
end
|
20
|
+
######################################### CRM #########################################
|
21
|
+
### Contacts ###
|
22
|
+
def get_contacts
|
23
|
+
return @client.get__crm__contacts
|
24
|
+
end
|
25
|
+
|
26
|
+
def get_contact(id)
|
27
|
+
return @client.get__crm__contacts(id)
|
28
|
+
end
|
29
|
+
|
30
|
+
def create_contact(data)
|
31
|
+
return @client.create__crm__contacts(data)
|
32
|
+
end
|
33
|
+
|
34
|
+
def update_contact(id, data)
|
35
|
+
return @client.update__crm__contacts(id, data)
|
36
|
+
end
|
37
|
+
### Companies ###
|
38
|
+
def get_companies
|
39
|
+
return @client.get__crm__companies
|
40
|
+
end
|
41
|
+
|
42
|
+
def get_company(id)
|
43
|
+
return @client.get__crm__companies(id)
|
44
|
+
end
|
45
|
+
|
46
|
+
def create_company(data)
|
47
|
+
return @client.create__crm__companies(data)
|
48
|
+
end
|
49
|
+
|
50
|
+
def update_company(id, data)
|
51
|
+
return @client.update__crm__companies(id, data)
|
52
|
+
end
|
53
|
+
|
54
|
+
### Deals ###
|
55
|
+
def get_deals
|
56
|
+
return @client.get__crm__deals
|
57
|
+
end
|
58
|
+
|
59
|
+
def get_deal(id)
|
60
|
+
return @client.get__crm__deals(id)
|
61
|
+
end
|
62
|
+
|
63
|
+
def create_deal(data)
|
64
|
+
return @client.create__crm__deals(data)
|
65
|
+
end
|
66
|
+
|
67
|
+
def update_deal(id, data)
|
68
|
+
return @client.update__crm__deals(id, data)
|
69
|
+
end
|
70
|
+
|
71
|
+
######################################### Content #########################################
|
72
|
+
### Stories ###
|
73
|
+
def get_stories
|
74
|
+
return @client.get__content__stories
|
75
|
+
end
|
76
|
+
|
77
|
+
def get_story(id)
|
78
|
+
return @client.get__content__stories(id)
|
79
|
+
end
|
80
|
+
|
81
|
+
def create_story(data)
|
82
|
+
return @client.create__content__stories(data)
|
83
|
+
end
|
84
|
+
|
85
|
+
def update_story(id, data)
|
86
|
+
return @client.update__content__stories(id, data)
|
87
|
+
end
|
88
|
+
|
89
|
+
### Content instances ###
|
90
|
+
def get_content_instances
|
91
|
+
return @client.get__content__instances
|
92
|
+
end
|
93
|
+
|
94
|
+
def get_content_instance(id)
|
95
|
+
return @client.get__content__instances(id)
|
96
|
+
end
|
97
|
+
|
98
|
+
def create_content_instance(data)
|
99
|
+
return @client.create__content__instances(data)
|
100
|
+
end
|
101
|
+
|
102
|
+
def update_content_instance(id, data)
|
103
|
+
return @client.update__content__instances(id, data)
|
104
|
+
end
|
105
|
+
|
106
|
+
### Content pages ###
|
107
|
+
def get_content_pages
|
108
|
+
return @client.get__content__pages
|
109
|
+
end
|
110
|
+
|
111
|
+
def get_content_page(id)
|
112
|
+
return @client.get__content__pages(id)
|
113
|
+
end
|
114
|
+
|
115
|
+
def create_content_page(data)
|
116
|
+
return @client.create__content__pages(data)
|
117
|
+
end
|
118
|
+
|
119
|
+
def update_content_page(id, data)
|
120
|
+
return @client.update__content__pages(id, data)
|
121
|
+
end
|
122
|
+
|
123
|
+
### Content templates ###
|
124
|
+
def get_content_templates
|
125
|
+
return @client.get__content__templates
|
126
|
+
end
|
127
|
+
|
128
|
+
def get_content_page(id)
|
129
|
+
return @client.get__content__templates(id)
|
130
|
+
end
|
131
|
+
|
132
|
+
def create_content_page(data)
|
133
|
+
return @client.create__content__templates(data)
|
134
|
+
end
|
135
|
+
|
136
|
+
def update_content_page(id, data)
|
137
|
+
return @client.update__content__templates(id, data)
|
138
|
+
end
|
139
|
+
|
140
|
+
######################################### Ecommerce #########################################
|
141
|
+
### Products ###
|
142
|
+
def get_products
|
143
|
+
return @client.get__ecommerce__products
|
144
|
+
end
|
145
|
+
|
146
|
+
def get_product(id)
|
147
|
+
return @client.get__ecommerce__products(id)
|
148
|
+
end
|
149
|
+
|
150
|
+
def create_product(data)
|
151
|
+
return @client.create__ecommerce__products(data)
|
152
|
+
end
|
153
|
+
|
154
|
+
def update_product(id, data)
|
155
|
+
return @client.update__ecommerce__products(id, data)
|
156
|
+
end
|
157
|
+
|
158
|
+
### Locations ###
|
159
|
+
def get_locations
|
160
|
+
return @client.get__ecommerce__locations
|
161
|
+
end
|
162
|
+
|
163
|
+
def get_location(id)
|
164
|
+
return @client.get__ecommerce__locations(id)
|
165
|
+
end
|
166
|
+
|
167
|
+
def create_location(data)
|
168
|
+
return @client.create__ecommerce__locations(data)
|
169
|
+
end
|
170
|
+
|
171
|
+
def update_location(id, data)
|
172
|
+
return @client.update__ecommerce__locations(id, data)
|
173
|
+
end
|
174
|
+
end
|
175
|
+
end
|
metadata
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: mints
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "'Ruben Gomez Garcia'"
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-02-20 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: json
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 1.8.3
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.8.3
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.8.3
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.8.3
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: httparty
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: 0.18.0
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 0.18.0
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: 0.18.0
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 0.18.0
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: addressable
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: 2.7.0
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 2.7.0
|
63
|
+
type: :runtime
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 2.7.0
|
70
|
+
- - ">="
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: 2.7.0
|
73
|
+
description:
|
74
|
+
email:
|
75
|
+
executables: []
|
76
|
+
extensions: []
|
77
|
+
extra_rdoc_files: []
|
78
|
+
files:
|
79
|
+
- Gemfile
|
80
|
+
- Readme.md
|
81
|
+
- lib/client.rb
|
82
|
+
- lib/contact.rb
|
83
|
+
- lib/mints.rb
|
84
|
+
- lib/pub.rb
|
85
|
+
- lib/user.rb
|
86
|
+
homepage: https://github.com/rubengomez/mints-ruby-sdk
|
87
|
+
licenses: []
|
88
|
+
metadata: {}
|
89
|
+
post_install_message:
|
90
|
+
rdoc_options: []
|
91
|
+
require_paths:
|
92
|
+
- lib
|
93
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '0'
|
98
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0'
|
103
|
+
requirements: []
|
104
|
+
rubyforge_project:
|
105
|
+
rubygems_version: 2.7.6.2
|
106
|
+
signing_key:
|
107
|
+
specification_version: 4
|
108
|
+
summary: MINTS gem allows to connect your Rails App to MINTS.CLOUD
|
109
|
+
test_files: []
|