pay 2.6.8 → 2.7.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of pay might be problematic. Click here for more details.

Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +73 -50
  3. data/app/models/pay.rb +5 -0
  4. data/app/models/pay/charge.rb +2 -0
  5. data/app/models/pay/subscription.rb +9 -2
  6. data/db/migrate/20200603134434_add_data_to_pay_models.rb +2 -18
  7. data/db/migrate/20210309004259_add_data_to_pay_billable.rb +10 -0
  8. data/db/migrate/20210406215234_add_currency_to_pay_charges.rb +5 -0
  9. data/db/migrate/20210406215506_add_application_fee_to_pay_models.rb +7 -0
  10. data/lib/generators/active_record/billable_generator.rb +44 -0
  11. data/lib/generators/active_record/merchant_generator.rb +44 -0
  12. data/lib/generators/active_record/templates/billable_migration.rb +16 -0
  13. data/lib/generators/active_record/templates/merchant_migration.rb +12 -0
  14. data/lib/generators/pay/{pay_generator.rb → billable_generator.rb} +2 -3
  15. data/lib/generators/pay/merchant_generator.rb +17 -0
  16. data/lib/generators/pay/orm_helpers.rb +10 -6
  17. data/lib/pay.rb +22 -0
  18. data/lib/pay/adapter.rb +22 -0
  19. data/lib/pay/billable.rb +4 -0
  20. data/lib/pay/braintree/billable.rb +11 -2
  21. data/lib/pay/braintree/subscription.rb +4 -0
  22. data/lib/pay/env.rb +8 -0
  23. data/lib/pay/fake_processor/subscription.rb +4 -0
  24. data/lib/pay/merchant.rb +37 -0
  25. data/lib/pay/paddle/subscription.rb +7 -0
  26. data/lib/pay/paddle/webhooks/subscription_payment_succeeded.rb +3 -1
  27. data/lib/pay/stripe.rb +11 -0
  28. data/lib/pay/stripe/billable.rb +38 -47
  29. data/lib/pay/stripe/charge.rb +38 -4
  30. data/lib/pay/stripe/merchant.rb +66 -0
  31. data/lib/pay/stripe/subscription.rb +64 -20
  32. data/lib/pay/stripe/webhooks/account_updated.rb +17 -0
  33. data/lib/pay/stripe/webhooks/charge_refunded.rb +2 -7
  34. data/lib/pay/stripe/webhooks/charge_succeeded.rb +2 -8
  35. data/lib/pay/stripe/webhooks/checkout_session_async_payment_succeeded.rb +13 -0
  36. data/lib/pay/stripe/webhooks/checkout_session_completed.rb +13 -0
  37. data/lib/pay/stripe/webhooks/payment_intent_succeeded.rb +2 -8
  38. data/lib/pay/stripe/webhooks/subscription_created.rb +1 -35
  39. data/lib/pay/stripe/webhooks/subscription_deleted.rb +1 -9
  40. data/lib/pay/stripe/webhooks/subscription_renewing.rb +4 -6
  41. data/lib/pay/stripe/webhooks/subscription_updated.rb +1 -28
  42. data/lib/pay/version.rb +1 -1
  43. metadata +19 -6
  44. data/lib/generators/active_record/pay_generator.rb +0 -58
  45. data/lib/generators/active_record/templates/migration.rb +0 -9
data/lib/pay/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pay
2
- VERSION = "2.6.8"
2
+ VERSION = "2.7.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pay
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.8
4
+ version: 2.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Charnes
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-04-09 00:00:00.000000000 Z
12
+ date: 2021-06-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -125,6 +125,7 @@ files:
125
125
  - app/jobs/pay/email_sync_job.rb
126
126
  - app/mailers/pay/application_mailer.rb
127
127
  - app/mailers/pay/user_mailer.rb
128
+ - app/models/pay.rb
128
129
  - app/models/pay/application_record.rb
129
130
  - app/models/pay/charge.rb
130
131
  - app/models/pay/subscription.rb
@@ -141,13 +142,20 @@ files:
141
142
  - db/migrate/20170727235816_create_pay_charges.rb
142
143
  - db/migrate/20190816015720_add_status_to_pay_subscriptions.rb
143
144
  - db/migrate/20200603134434_add_data_to_pay_models.rb
144
- - lib/generators/active_record/pay_generator.rb
145
- - lib/generators/active_record/templates/migration.rb
145
+ - db/migrate/20210309004259_add_data_to_pay_billable.rb
146
+ - db/migrate/20210406215234_add_currency_to_pay_charges.rb
147
+ - db/migrate/20210406215506_add_application_fee_to_pay_models.rb
148
+ - lib/generators/active_record/billable_generator.rb
149
+ - lib/generators/active_record/merchant_generator.rb
150
+ - lib/generators/active_record/templates/billable_migration.rb
151
+ - lib/generators/active_record/templates/merchant_migration.rb
152
+ - lib/generators/pay/billable_generator.rb
146
153
  - lib/generators/pay/email_views_generator.rb
154
+ - lib/generators/pay/merchant_generator.rb
147
155
  - lib/generators/pay/orm_helpers.rb
148
- - lib/generators/pay/pay_generator.rb
149
156
  - lib/generators/pay/views_generator.rb
150
157
  - lib/pay.rb
158
+ - lib/pay/adapter.rb
151
159
  - lib/pay/billable.rb
152
160
  - lib/pay/billable/sync_email.rb
153
161
  - lib/pay/braintree.rb
@@ -171,6 +179,7 @@ files:
171
179
  - lib/pay/fake_processor/charge.rb
172
180
  - lib/pay/fake_processor/error.rb
173
181
  - lib/pay/fake_processor/subscription.rb
182
+ - lib/pay/merchant.rb
174
183
  - lib/pay/paddle.rb
175
184
  - lib/pay/paddle/billable.rb
176
185
  - lib/pay/paddle/charge.rb
@@ -188,9 +197,13 @@ files:
188
197
  - lib/pay/stripe/billable.rb
189
198
  - lib/pay/stripe/charge.rb
190
199
  - lib/pay/stripe/error.rb
200
+ - lib/pay/stripe/merchant.rb
191
201
  - lib/pay/stripe/subscription.rb
202
+ - lib/pay/stripe/webhooks/account_updated.rb
192
203
  - lib/pay/stripe/webhooks/charge_refunded.rb
193
204
  - lib/pay/stripe/webhooks/charge_succeeded.rb
205
+ - lib/pay/stripe/webhooks/checkout_session_async_payment_succeeded.rb
206
+ - lib/pay/stripe/webhooks/checkout_session_completed.rb
194
207
  - lib/pay/stripe/webhooks/customer_deleted.rb
195
208
  - lib/pay/stripe/webhooks/customer_updated.rb
196
209
  - lib/pay/stripe/webhooks/payment_action_required.rb
@@ -222,7 +235,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
222
235
  - !ruby/object:Gem::Version
223
236
  version: '0'
224
237
  requirements: []
225
- rubygems_version: 3.2.3
238
+ rubygems_version: 3.2.15
226
239
  signing_key:
227
240
  specification_version: 4
228
241
  summary: Payments engine for Ruby on Rails
@@ -1,58 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators/active_record"
4
- require "generators/pay/orm_helpers"
5
-
6
- module ActiveRecord
7
- module Generators
8
- class PayGenerator < ActiveRecord::Generators::Base
9
- include Pay::Generators::OrmHelpers
10
- source_root File.expand_path("../templates", __FILE__)
11
-
12
- def copy_pay_billable_migration
13
- if (behavior == :invoke && model_exists?) || (behavior == :revoke && migration_exists?(table_name))
14
- migration_template "migration.rb", "#{migration_path}/add_pay_billable_to_#{table_name}.rb", migration_version: migration_version
15
- end
16
- # TODO: Throw error here that model should already exist if it doesn't
17
- end
18
-
19
- def inject_pay_billable_content
20
- content = model_contents
21
-
22
- class_path = if namespaced?
23
- class_name.to_s.split("::")
24
- else
25
- [class_name]
26
- end
27
-
28
- indent_depth = class_path.size - 1
29
- content = content.split("\n").map { |line| " " * indent_depth + line }.join("\n") << "\n"
30
-
31
- inject_into_class(model_path, class_path.last, content) if model_exists?
32
- end
33
-
34
- def migration_data
35
- <<RUBY
36
- t.string :processor
37
- t.string :processor_id
38
- t.datetime :trial_ends_at
39
- t.string :card_type
40
- t.string :card_last4
41
- t.string :card_exp_month
42
- t.string :card_exp_year
43
- t.text :extra_billing_info
44
- RUBY
45
- end
46
-
47
- def rails5_and_up?
48
- Rails::VERSION::MAJOR >= 5
49
- end
50
-
51
- def migration_version
52
- if rails5_and_up?
53
- "[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]"
54
- end
55
- end
56
- end
57
- end
58
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class AddPayBillableTo<%= table_name.camelize %> < ActiveRecord::Migration<%= migration_version %>
4
- def change
5
- change_table :<%= table_name %> do |t|
6
- <%= migration_data -%>
7
- end
8
- end
9
- end