hubspot 0.0.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. checksums.yaml +7 -0
  2. data/lib/hubspot.rb +53 -4
  3. data/lib/hubspot/api/transaction_email/single_send.rb +37 -0
  4. data/lib/hubspot/delivery_method.rb +18 -0
  5. data/lib/hubspot/errors.rb +21 -0
  6. data/lib/hubspot/http_request.rb +44 -0
  7. data/lib/hubspot/http_response.rb +31 -0
  8. data/lib/hubspot/mailer.rb +18 -0
  9. data/lib/hubspot/object.rb +33 -0
  10. data/lib/hubspot/railtie.rb +13 -0
  11. data/lib/hubspot/transaction_email/delivery_method.rb +17 -0
  12. data/lib/hubspot/transaction_email/mailer.rb +12 -0
  13. data/lib/hubspot/version.rb +1 -1
  14. metadata +245 -158
  15. data/MIT-LICENSE +0 -20
  16. data/README.rdoc +0 -158
  17. data/Rakefile +0 -38
  18. data/app/helpers/hubspot_helper.rb +0 -17
  19. data/app/models/hubspot/base.rb +0 -40
  20. data/app/models/hubspot/blog.rb +0 -35
  21. data/app/models/hubspot/blogs/blog_association.rb +0 -35
  22. data/app/models/hubspot/blogs/comment.rb +0 -5
  23. data/app/models/hubspot/blogs/post.rb +0 -12
  24. data/app/models/hubspot/blogs/posts/comment.rb +0 -23
  25. data/app/models/hubspot/connection.rb +0 -46
  26. data/app/models/hubspot/event.rb +0 -39
  27. data/app/models/hubspot/keyword.rb +0 -49
  28. data/app/models/hubspot/lead.rb +0 -26
  29. data/app/models/hubspot/performable/event.rb +0 -67
  30. data/lib/hubspot/action_controller_extensions.rb +0 -15
  31. data/lib/hubspot/engine.rb +0 -30
  32. data/lib/tasks/hubspot_tasks.rake +0 -4
  33. data/test/dummy/README.rdoc +0 -261
  34. data/test/dummy/Rakefile +0 -7
  35. data/test/dummy/app/assets/javascripts/application.js +0 -15
  36. data/test/dummy/app/assets/stylesheets/application.css +0 -13
  37. data/test/dummy/app/controllers/application_controller.rb +0 -3
  38. data/test/dummy/app/helpers/application_helper.rb +0 -2
  39. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  40. data/test/dummy/config.ru +0 -4
  41. data/test/dummy/config/application.rb +0 -56
  42. data/test/dummy/config/boot.rb +0 -10
  43. data/test/dummy/config/database.yml +0 -25
  44. data/test/dummy/config/environment.rb +0 -5
  45. data/test/dummy/config/environments/development.rb +0 -37
  46. data/test/dummy/config/environments/production.rb +0 -67
  47. data/test/dummy/config/environments/test.rb +0 -37
  48. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  49. data/test/dummy/config/initializers/inflections.rb +0 -15
  50. data/test/dummy/config/initializers/mime_types.rb +0 -5
  51. data/test/dummy/config/initializers/secret_token.rb +0 -7
  52. data/test/dummy/config/initializers/session_store.rb +0 -8
  53. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  54. data/test/dummy/config/locales/en.yml +0 -5
  55. data/test/dummy/config/routes.rb +0 -58
  56. data/test/dummy/db/test.sqlite3 +0 -0
  57. data/test/dummy/log/test.log +0 -2326
  58. data/test/dummy/public/404.html +0 -26
  59. data/test/dummy/public/422.html +0 -26
  60. data/test/dummy/public/500.html +0 -25
  61. data/test/dummy/public/favicon.ico +0 -0
  62. data/test/dummy/script/rails +0 -6
  63. data/test/fixtures/vcr_cassettes/blog-comments.yml +0 -74
  64. data/test/fixtures/vcr_cassettes/blog-find.yml +0 -36
  65. data/test/fixtures/vcr_cassettes/blog-posts.yml +0 -75
  66. data/test/fixtures/vcr_cassettes/blogs-list.yml +0 -39
  67. data/test/fixtures/vcr_cassettes/event-create.yml +0 -36
  68. data/test/fixtures/vcr_cassettes/event-record.yml +0 -47
  69. data/test/fixtures/vcr_cassettes/events-list.yml +0 -41
  70. data/test/fixtures/vcr_cassettes/keyword-create.yml +0 -36
  71. data/test/fixtures/vcr_cassettes/keywords-list.yml +0 -385
  72. data/test/fixtures/vcr_cassettes/lead-find.yml +0 -103
  73. data/test/fixtures/vcr_cassettes/lead-update.yml +0 -239
  74. data/test/fixtures/vcr_cassettes/leads-list.yml +0 -190
  75. data/test/fixtures/vcr_cassettes/post-comments.yml +0 -72
  76. data/test/fixtures/vcr_cassettes/post-find.yml +0 -39
  77. data/test/hubspot_test.rb +0 -5
  78. data/test/test_helper.rb +0 -22
  79. data/test/unit/blog_test.rb +0 -37
  80. data/test/unit/event_test.rb +0 -21
  81. data/test/unit/keyword_test.rb +0 -22
  82. data/test/unit/lead_test.rb +0 -31
  83. data/test/unit/performable_event_test.rb +0 -22
  84. data/test/unit/post_test.rb +0 -20
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 3ee981f30172ab1c4e5036a39eea595441c685385e65729c388a8660cc85f6e3
4
+ data.tar.gz: c7e271737c34768fa555a510e5e00fd5024e575799caf812e98599c700284d7e
5
+ SHA512:
6
+ metadata.gz: 4203835be4ec47f6db2bafa6e9b2b7d0bf2c506fb65cf902cb1a72496e48350795827f65fbd6eefb087cac188b7a42d904885fd820766644117289d6139f50cd
7
+ data.tar.gz: 9e188bff0c87f84ef23fa8bf9b7bf799e5346e0ee5f6831f99bc485260d8ecee6fe590b98e296a8f8b6e5aa025a5d73b4cdd5ec7198431d619ba2d783b5d63b1
@@ -1,8 +1,57 @@
1
+ require "hubspot/version"
2
+ require "hubspot/http_request"
3
+
1
4
  module Hubspot
2
- extend ActiveSupport::Autoload
5
+ def self.configure
6
+ self.configuration ||= Configuration.new
7
+ yield(configuration)
8
+ end
3
9
 
4
- autoload :ActionControllerExtensions
5
- end
10
+ class << self
11
+ attr_accessor :configuration
12
+
13
+ def get(url, options)
14
+ raise ArgumentError, "Url can't be blank!" if url.blank?
15
+ raise ArgumentError, "Options can't be blank!" if options.blank?
16
+
17
+ Base.new.send(:get, url, options)
18
+ end
19
+
20
+ def post(url, options)
21
+ raise ArgumentError, "Url can't be blank!" if url.blank?
22
+ raise ArgumentError, "Options can't be blank!" if options.blank?
23
+
24
+ Base.new.send(:post, url, options)
25
+ end
26
+ end
6
27
 
7
- require 'hubspot/engine'
28
+ class Configuration
29
+ attr_accessor :hapikey, :user_name, :password, :address, :port
30
+
31
+ def initialize#(hapikey, user_name, password, address, port)
32
+ # @hapikey = hapikey
33
+ # @user_name = user_name
34
+ # @password = password
35
+ # @address = address
36
+ # @port = port
37
+ end
38
+
39
+ def hubspot?
40
+ ActionMailer::Base.delivery_method == :hubspot
41
+ end
42
+
43
+ def hubspot_transaction_email?
44
+ ActionMailer::Base.delivery_method == :hubspot_transaction_email
45
+ end
46
+ end
47
+
48
+ class Base < HttpRequest
49
+ def send(verb = :get, url, options)
50
+ self.method(verb).call(url, options)
51
+ end
52
+ end
53
+ end
8
54
 
55
+ require "hubspot/railtie" if defined?(Rails::Railtie)
56
+ # require "hubspot/mailer" if defined?(ActionMailer::Base)
57
+ # require "hubspot/transaction_email/mailer" if defined?(ActionMailer::Base)
@@ -0,0 +1,37 @@
1
+ require 'hubspot'
2
+
3
+ module Hubspot
4
+ module Api
5
+ module TransactionEmail
6
+ class SingleSend
7
+ class KeyError < StandardError; end
8
+
9
+ attr_accessor :hapikey
10
+
11
+ def initialize(hapikey)
12
+ @hapikey = hapikey
13
+ end
14
+
15
+ class << self
16
+ def post(options)
17
+ SingleSend.new(Hubspot.configuration.hapikey).post(options)
18
+ end
19
+ end
20
+
21
+ # TODO: DWE: if RUBY_VERSION > "2.3" See -- dig(:message, :to)
22
+ def post(options = {})
23
+ raise ArgumentError, "EmailId: Required Error" if options[:emailId].blank?
24
+ raise ArgumentError, "To: Required Error" if options[:message].blank?
25
+ raise KeyError, "Hubspot Api Key Error" if hapikey.blank?
26
+
27
+ response = Hubspot.post("/email/public/v1/singleEmail/send?hapikey=#{hapikey}", options)
28
+ if response[:status] == "200"
29
+ response
30
+ else
31
+ raise StandardError, "Something went wrong!"
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,18 @@
1
+ module Hubspot
2
+ class DeliveryMethod
3
+ def deliver!(mail)
4
+ configuration = Hubspot.configuration
5
+
6
+ smtp_user = configuration.user_name
7
+ smtp_password = configuration.password
8
+ smtp_host = configuration.address
9
+ smtp_port = configuration.port
10
+
11
+ delivery_method_options = { user_name: smtp_user, password: smtp_password, address: smtp_host, port: smtp_port, authentication: :plain, enable_starttls_auto: true }
12
+
13
+ headers = headers.merge!(delivery_method_options: delivery_method_options)
14
+
15
+ super(mail)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,21 @@
1
+ module Hubspot
2
+ class Errors < Hash
3
+ def add(key, value, _opts = {})
4
+ self[key] ||= []
5
+ self[key] << value
6
+ self[key].uniq!
7
+ end
8
+
9
+ def add_multiple_errors(errors_hash)
10
+ errors_hash.each do |key, values|
11
+ errors_hash[key].each { |value| add(key, value) }
12
+ end
13
+ end
14
+
15
+ def each
16
+ each_key do |field|
17
+ self[field].each { |message| yield field, message }
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,44 @@
1
+ require 'net/http'
2
+ require_relative 'http_response'
3
+
4
+ module Hubspot
5
+ class HttpRequest < Object
6
+ BASE_URL = "https://api.hubapi.com"
7
+
8
+ attr_accessor :http, :uri
9
+
10
+ def initialize(debug = true)
11
+ @uri = URI(BASE_URL)
12
+ @http = Net::HTTP.new(uri.host, uri.port)
13
+
14
+ if uri.scheme == "https"
15
+ @http.use_ssl = true
16
+ @http.verify_mode = OpenSSL::SSL::VERIFY_PEER
17
+ end
18
+
19
+ @http.set_debug_output($stdout) if debug
20
+ end
21
+
22
+ def get(path, options = {})
23
+ raise ArgumentError, "Path Error" if path.blank?
24
+
25
+ body = JSON.dump(options)
26
+ request = Net::HTTP::Get.new(path, body)
27
+ response = http.request(request)
28
+
29
+ HttpResponse.call(response)
30
+ end
31
+
32
+ def post(path, options = {})
33
+ raise ArgumentError, "Path Error" if path.blank?
34
+
35
+ body = JSON.dump(options)
36
+ request = Net::HTTP::Post.new(path) # fyi: uri.path or just uri
37
+ request.add_field("Content-Type", "application/json")
38
+ request.body = body
39
+ response = http.request(request)
40
+
41
+ HttpResponse.call(response)
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,31 @@
1
+ require 'net/http'
2
+
3
+ module Hubspot
4
+ class HttpResponse < Object
5
+ attr_accessor :response
6
+
7
+ def initialize(response)
8
+ @response = response
9
+ end
10
+
11
+ def self.call(response)
12
+ new(response).constructor
13
+ end
14
+
15
+ def constructor
16
+ case response
17
+ when Net::HTTPSuccess
18
+ body = JSON.parse response.body if response.body && response.body.length >= 2
19
+ { 'body': body, 'status': response.code }
20
+ when Net::HTTPUnauthorized
21
+ { 'error' => "#{response.message}: username and password set and correct?", 'status' => response.code }
22
+ when Net::HTTPServerError
23
+ # errors.add(error: response.message, :status, response.code)
24
+ { 'error' => "#{response.message}: try again later?", 'status' => response.code }
25
+ else
26
+ # errors.add(error: response.message, :status, response.code)
27
+ { 'error' => response.message, 'status' => response.code }
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,18 @@
1
+ module Hubspot
2
+ class Mailer < ActionMailer::Base
3
+ def mail(headers = {}, &block)
4
+ configuration = Hubspot.configuration
5
+
6
+ smtp_user = configuration.user_name
7
+ smtp_password = configuration.password
8
+ smtp_host = configuration.address
9
+ smtp_port = configuration.port
10
+
11
+ delivery_method_options = { user_name: smtp_user, password: smtp_password, address: smtp_host, port: smtp_port, authentication: :plain, enable_starttls_auto: true }
12
+
13
+ headers = headers.merge!(delivery_method_options: delivery_method_options)
14
+
15
+ super
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,33 @@
1
+ require_relative 'errors'
2
+
3
+ module Hubspot
4
+ class Object
5
+ class << self
6
+ def call(*arg)
7
+ Object.new(*arg).constructor
8
+ end
9
+ end
10
+
11
+ attr_reader :result
12
+ def constructor
13
+ @result = call
14
+ self
15
+ end
16
+
17
+ def success?
18
+ !failure?
19
+ end
20
+
21
+ def failure?
22
+ errors.any?
23
+ end
24
+
25
+ def errors
26
+ @errors ||= Errors.new
27
+ end
28
+
29
+ def call
30
+ raise NotImplementedError unless defined?(super)
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,13 @@
1
+ require 'hubspot/delivery_method'
2
+ require 'hubspot/transaction_email/delivery_method'
3
+
4
+ module Hubspot
5
+ class Railtie < Rails::Railtie
6
+ initializer "hubspot.add_delivery_method" do
7
+ ActiveSupport.on_load :action_mailer do
8
+ ActionMailer::Base.add_delivery_method(:hubspot, Hubspot::DeliveryMethod)
9
+ ActionMailer::Base.add_delivery_method(:hubspot_transaction_email, Hubspot::TransactionEmail::DeliveryMethod)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ module Hubspot
2
+ module TransactionEmail
3
+ class DeliveryMethod < ActionMailer::Base
4
+ def deliver!(mail)
5
+ raise NotImplementedError
6
+ configuration = Hubspot.configuration
7
+
8
+ smtp_user = configuration.user_name
9
+ smtp_password = configuration.password
10
+ smtp_host = configuration.address
11
+ smtp_port = configuration.port
12
+
13
+ Api::TransactionEmail::SingleSend.post()
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ require 'hubspot/api/transaction_email/single_send'
2
+
3
+ module Hubspot
4
+ module TransactionEmail
5
+ class Mailer < ActionMailer::Base
6
+ def mail(headers = {}, &block)
7
+ attributes = { emailId: headers[:email_id], message: headers[:message] }
8
+ Api::TransactionEmail::SingleSend.post(attributes)
9
+ end
10
+ end
11
+ end
12
+ end
@@ -1,3 +1,3 @@
1
1
  module Hubspot
2
- VERSION = "0.0.2"
2
+ VERSION = "1.0.0"
3
3
  end
metadata CHANGED
@@ -1,207 +1,294 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hubspot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
- - Reinier de Lange
7
+ - Dustin Eichler
9
8
  autorequire:
10
- bindir: bin
9
+ bindir: exe
11
10
  cert_chain: []
12
- date: 2012-05-04 00:00:00.000000000 Z
11
+ date: 2019-02-28 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: rails
14
+ name: actionmailer
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: '3'
19
+ version: 3.0.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: '3'
26
+ version: 3.0.0
30
27
  - !ruby/object:Gem::Dependency
31
- name: sqlite3
28
+ name: activesupport
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 2.0.1
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 2.0.1
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '10.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '10.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '3.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: capybara
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: selenium-webdriver
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: database_cleaner
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
36
116
  - !ruby/object:Gem::Version
37
117
  version: '0'
38
118
  type: :development
39
119
  prerelease: false
40
120
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
121
  requirements:
43
- - - ! '>='
122
+ - - ">="
44
123
  - !ruby/object:Gem::Version
45
124
  version: '0'
46
- description: Integration with the Hubspot API
125
+ - !ruby/object:Gem::Dependency
126
+ name: factory_bot
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: ffaker
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rspec-rails
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: simplecov
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: byebug
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: pry
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ">="
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: webmock
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
223
+ - !ruby/object:Gem::Dependency
224
+ name: json-schema
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ - !ruby/object:Gem::Dependency
238
+ name: combustion
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: '1.1'
244
+ type: :development
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: '1.1'
251
+ description: Hubspot smtp mailer, delivery method and api wrapper
47
252
  email:
48
- - r.j.delange@nedforce.nl
253
+ - dustin@smalhaus.com
49
254
  executables: []
50
255
  extensions: []
51
256
  extra_rdoc_files: []
52
257
  files:
53
- - app/helpers/hubspot_helper.rb
54
- - app/models/hubspot/base.rb
55
- - app/models/hubspot/blog.rb
56
- - app/models/hubspot/blogs/blog_association.rb
57
- - app/models/hubspot/blogs/comment.rb
58
- - app/models/hubspot/blogs/post.rb
59
- - app/models/hubspot/blogs/posts/comment.rb
60
- - app/models/hubspot/connection.rb
61
- - app/models/hubspot/event.rb
62
- - app/models/hubspot/keyword.rb
63
- - app/models/hubspot/lead.rb
64
- - app/models/hubspot/performable/event.rb
65
- - lib/hubspot/action_controller_extensions.rb
66
- - lib/hubspot/engine.rb
67
- - lib/hubspot/version.rb
68
258
  - lib/hubspot.rb
69
- - lib/tasks/hubspot_tasks.rake
70
- - MIT-LICENSE
71
- - Rakefile
72
- - README.rdoc
73
- - test/dummy/app/assets/javascripts/application.js
74
- - test/dummy/app/assets/stylesheets/application.css
75
- - test/dummy/app/controllers/application_controller.rb
76
- - test/dummy/app/helpers/application_helper.rb
77
- - test/dummy/app/views/layouts/application.html.erb
78
- - test/dummy/config/application.rb
79
- - test/dummy/config/boot.rb
80
- - test/dummy/config/database.yml
81
- - test/dummy/config/environment.rb
82
- - test/dummy/config/environments/development.rb
83
- - test/dummy/config/environments/production.rb
84
- - test/dummy/config/environments/test.rb
85
- - test/dummy/config/initializers/backtrace_silencers.rb
86
- - test/dummy/config/initializers/inflections.rb
87
- - test/dummy/config/initializers/mime_types.rb
88
- - test/dummy/config/initializers/secret_token.rb
89
- - test/dummy/config/initializers/session_store.rb
90
- - test/dummy/config/initializers/wrap_parameters.rb
91
- - test/dummy/config/locales/en.yml
92
- - test/dummy/config/routes.rb
93
- - test/dummy/config.ru
94
- - test/dummy/db/test.sqlite3
95
- - test/dummy/log/test.log
96
- - test/dummy/public/404.html
97
- - test/dummy/public/422.html
98
- - test/dummy/public/500.html
99
- - test/dummy/public/favicon.ico
100
- - test/dummy/Rakefile
101
- - test/dummy/README.rdoc
102
- - test/dummy/script/rails
103
- - test/fixtures/vcr_cassettes/blog-comments.yml
104
- - test/fixtures/vcr_cassettes/blog-find.yml
105
- - test/fixtures/vcr_cassettes/blog-posts.yml
106
- - test/fixtures/vcr_cassettes/blogs-list.yml
107
- - test/fixtures/vcr_cassettes/event-create.yml
108
- - test/fixtures/vcr_cassettes/event-record.yml
109
- - test/fixtures/vcr_cassettes/events-list.yml
110
- - test/fixtures/vcr_cassettes/keyword-create.yml
111
- - test/fixtures/vcr_cassettes/keywords-list.yml
112
- - test/fixtures/vcr_cassettes/lead-find.yml
113
- - test/fixtures/vcr_cassettes/lead-update.yml
114
- - test/fixtures/vcr_cassettes/leads-list.yml
115
- - test/fixtures/vcr_cassettes/post-comments.yml
116
- - test/fixtures/vcr_cassettes/post-find.yml
117
- - test/hubspot_test.rb
118
- - test/test_helper.rb
119
- - test/unit/blog_test.rb
120
- - test/unit/event_test.rb
121
- - test/unit/keyword_test.rb
122
- - test/unit/lead_test.rb
123
- - test/unit/performable_event_test.rb
124
- - test/unit/post_test.rb
125
- homepage: http://www.nedforce.nl
126
- licenses: []
259
+ - lib/hubspot/api/transaction_email/single_send.rb
260
+ - lib/hubspot/delivery_method.rb
261
+ - lib/hubspot/errors.rb
262
+ - lib/hubspot/http_request.rb
263
+ - lib/hubspot/http_response.rb
264
+ - lib/hubspot/mailer.rb
265
+ - lib/hubspot/object.rb
266
+ - lib/hubspot/railtie.rb
267
+ - lib/hubspot/transaction_email/delivery_method.rb
268
+ - lib/hubspot/transaction_email/mailer.rb
269
+ - lib/hubspot/version.rb
270
+ homepage: https://www.github.com/smalhaus/hubspot
271
+ licenses:
272
+ - MIT
273
+ metadata: {}
127
274
  post_install_message:
128
275
  rdoc_options: []
129
276
  require_paths:
130
277
  - lib
131
278
  required_ruby_version: !ruby/object:Gem::Requirement
132
- none: false
133
279
  requirements:
134
- - - ! '>='
280
+ - - ">="
135
281
  - !ruby/object:Gem::Version
136
282
  version: '0'
137
- segments:
138
- - 0
139
- hash: 4273036089859064292
140
283
  required_rubygems_version: !ruby/object:Gem::Requirement
141
- none: false
142
284
  requirements:
143
- - - ! '>='
285
+ - - ">="
144
286
  - !ruby/object:Gem::Version
145
287
  version: '0'
146
- segments:
147
- - 0
148
- hash: 4273036089859064292
149
288
  requirements: []
150
289
  rubyforge_project:
151
- rubygems_version: 1.8.21
290
+ rubygems_version: 2.7.8
152
291
  signing_key:
153
- specification_version: 3
154
- summary: Integration with the Hubspot API
155
- test_files:
156
- - test/dummy/app/assets/javascripts/application.js
157
- - test/dummy/app/assets/stylesheets/application.css
158
- - test/dummy/app/controllers/application_controller.rb
159
- - test/dummy/app/helpers/application_helper.rb
160
- - test/dummy/app/views/layouts/application.html.erb
161
- - test/dummy/config/application.rb
162
- - test/dummy/config/boot.rb
163
- - test/dummy/config/database.yml
164
- - test/dummy/config/environment.rb
165
- - test/dummy/config/environments/development.rb
166
- - test/dummy/config/environments/production.rb
167
- - test/dummy/config/environments/test.rb
168
- - test/dummy/config/initializers/backtrace_silencers.rb
169
- - test/dummy/config/initializers/inflections.rb
170
- - test/dummy/config/initializers/mime_types.rb
171
- - test/dummy/config/initializers/secret_token.rb
172
- - test/dummy/config/initializers/session_store.rb
173
- - test/dummy/config/initializers/wrap_parameters.rb
174
- - test/dummy/config/locales/en.yml
175
- - test/dummy/config/routes.rb
176
- - test/dummy/config.ru
177
- - test/dummy/db/test.sqlite3
178
- - test/dummy/log/test.log
179
- - test/dummy/public/404.html
180
- - test/dummy/public/422.html
181
- - test/dummy/public/500.html
182
- - test/dummy/public/favicon.ico
183
- - test/dummy/Rakefile
184
- - test/dummy/README.rdoc
185
- - test/dummy/script/rails
186
- - test/fixtures/vcr_cassettes/blog-comments.yml
187
- - test/fixtures/vcr_cassettes/blog-find.yml
188
- - test/fixtures/vcr_cassettes/blog-posts.yml
189
- - test/fixtures/vcr_cassettes/blogs-list.yml
190
- - test/fixtures/vcr_cassettes/event-create.yml
191
- - test/fixtures/vcr_cassettes/event-record.yml
192
- - test/fixtures/vcr_cassettes/events-list.yml
193
- - test/fixtures/vcr_cassettes/keyword-create.yml
194
- - test/fixtures/vcr_cassettes/keywords-list.yml
195
- - test/fixtures/vcr_cassettes/lead-find.yml
196
- - test/fixtures/vcr_cassettes/lead-update.yml
197
- - test/fixtures/vcr_cassettes/leads-list.yml
198
- - test/fixtures/vcr_cassettes/post-comments.yml
199
- - test/fixtures/vcr_cassettes/post-find.yml
200
- - test/hubspot_test.rb
201
- - test/test_helper.rb
202
- - test/unit/blog_test.rb
203
- - test/unit/event_test.rb
204
- - test/unit/keyword_test.rb
205
- - test/unit/lead_test.rb
206
- - test/unit/performable_event_test.rb
207
- - test/unit/post_test.rb
292
+ specification_version: 4
293
+ summary: Hubspot smtp mailer, delivery method and api wrapper
294
+ test_files: []