solidus_braintree 2.0.0 → 3.0.0
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 +4 -4
- data/.circleci/config.yml +39 -8
- data/.gitignore +1 -0
- data/.rubocop.yml +8 -1
- data/CHANGELOG.md +37 -29
- data/Rakefile +6 -1
- data/app/assets/config/solidus_braintree_manifest.js +0 -1
- data/app/assets/javascripts/spree/backend/solidus_braintree.js +4 -4
- data/app/models/solidus_braintree/gateway.rb +4 -0
- data/app/models/solidus_braintree/response.rb +1 -1
- data/app/models/solidus_braintree/source.rb +5 -0
- data/bin/dummy-app +37 -0
- data/bin/rails-dummy-app +17 -0
- data/bin/rspec +11 -0
- data/bin/sandbox +20 -62
- data/db/migrate/20230210104310_add_device_data_to_braintree_sources.rb +5 -0
- data/lib/generators/solidus_braintree/install/install_generator.rb +134 -34
- data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/javascripts/spree/frontend/paypal_button.js +1 -1
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/ajax.js +13 -0
- data/{app/assets/javascripts → lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend}/solidus_braintree/apple_pay_button.js +2 -2
- data/{app/assets/javascripts → lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend}/solidus_braintree/checkout.js +10 -5
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/client.js +239 -0
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/constants.js +89 -0
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/frontend.js +15 -0
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js +48 -0
- data/{app/assets/javascripts → lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend}/solidus_braintree/paypal_button.js +2 -2
- data/{app/assets/javascripts → lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend}/solidus_braintree/paypal_messaging.js +1 -1
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/promise.js +20 -0
- data/{app/assets/javascripts → lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend}/solidus_braintree/venmo_button.js +1 -1
- data/lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree.js +1 -0
- data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/stylesheets/spree/frontend/solidus_braintree.scss +11 -0
- data/lib/{controllers/frontend → generators/solidus_braintree/install/templates/app/controllers}/solidus_braintree/checkouts_controller.rb +1 -1
- data/lib/{controllers/frontend → generators/solidus_braintree/install/templates/app/controllers}/solidus_braintree/transactions_controller.rb +3 -3
- data/lib/generators/solidus_braintree/install/templates/app/views/checkouts/existing_payment/_braintree.html.erb +2 -0
- data/lib/{views/frontend/spree/checkout → generators/solidus_braintree/install/templates/app/views/checkouts}/payment/_braintree.html.erb +1 -1
- data/lib/{views/frontend/solidus_braintree/payments/_payment.html.erb → generators/solidus_braintree/install/templates/app/views/payments/_braintree_payment_details.html.erb} +0 -3
- data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_apple_pay_button.html.erb +1 -1
- data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_braintree_head_scripts.html.erb +1 -1
- data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_braintree_hosted_fields.html.erb +1 -4
- data/lib/solidus_braintree/engine.rb +15 -10
- data/lib/solidus_braintree/version.rb +1 -1
- data/solidus_braintree.gemspec +3 -5
- data/spec/controllers/solidus_braintree/checkouts_controller_spec.rb +2 -2
- data/spec/controllers/solidus_braintree/client_tokens_controller_spec.rb +2 -2
- data/spec/controllers/solidus_braintree/configurations_controller_spec.rb +2 -2
- data/spec/controllers/solidus_braintree/transactions_controller_spec.rb +3 -3
- data/spec/fixtures/views/carts/_cart_footer.html.erb +18 -0
- data/spec/helpers/solidus_braintree/braintree_admin_helper_spec.rb +1 -1
- data/spec/helpers/solidus_braintree/braintree_checkout_helper_spec.rb +1 -1
- data/spec/models/solidus_braintree/address_spec.rb +1 -1
- data/spec/models/solidus_braintree/avs_result_spec.rb +1 -1
- data/spec/models/solidus_braintree/gateway_spec.rb +35 -3
- data/spec/models/solidus_braintree/response_spec.rb +1 -1
- data/spec/models/solidus_braintree/source_spec.rb +17 -1
- data/spec/models/solidus_braintree/transaction_address_spec.rb +2 -2
- data/spec/models/solidus_braintree/transaction_import_spec.rb +2 -2
- data/spec/models/solidus_braintree/transaction_spec.rb +2 -2
- data/spec/models/spree/store_spec.rb +2 -2
- data/spec/requests/spree/api/orders_controller_spec.rb +2 -2
- data/spec/solidus_braintree_helper.rb +7 -0
- data/{lib/solidus_braintree/testing_support → spec/support/solidus_braintree}/factories.rb +17 -15
- data/spec/support/{order_ready_for_payment.rb → solidus_braintree/order_ready_for_payment.rb} +9 -2
- data/spec/support/solidus_braintree/order_walkthrough.rb +87 -0
- data/spec/support/solidus_braintree/with_prepended_view_fixtures.rb +19 -0
- data/spec/{features → system}/backend/configuration_spec.rb +2 -2
- data/spec/{features → system}/backend/new_payment_spec.rb +3 -4
- data/spec/{features → system}/frontend/braintree_credit_card_checkout_spec.rb +23 -15
- data/spec/{features → system}/frontend/paypal_checkout_spec.rb +6 -3
- data/spec/{features → system}/frontend/venmo_checkout_spec.rb +8 -9
- metadata +88 -107
- data/app/assets/javascripts/solidus_braintree/frontend.js +0 -14
- data/app/assets/javascripts/spree/frontend/solidus_braintree.js +0 -1
- data/app/decorators/controllers/solidus_braintree/checkout_controller_decorator.rb +0 -11
- data/app/decorators/controllers/solidus_braintree/orders_controller_decorator.rb +0 -11
- data/app/overrides/spree/payments/payment/add_paypal_funding_source_to_payment.rb +0 -9
- data/app/views/spree/checkout/existing_payment/_braintree.html.erb +0 -10
- data/spec/fixtures/views/spree/orders/edit.html.erb +0 -50
- data/spec/spec_helper.rb +0 -32
- data/spec/support/views.rb +0 -1
- /data/app/assets/javascripts/{solidus_braintree → spree/backend/solidus_braintree}/client.js +0 -0
- /data/app/assets/javascripts/{solidus_braintree → spree/backend/solidus_braintree}/constants.js +0 -0
- /data/app/assets/javascripts/{solidus_braintree → spree/backend/solidus_braintree}/hosted_form.js +0 -0
- /data/app/assets/javascripts/{solidus_braintree → spree/backend/solidus_braintree}/promise.js +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_blue_button_280x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_blue_button_320x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_blue_button_375x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_white_button_280x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_white_button_320x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_active_white_button_375x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_blue_acceptance_mark.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_blue_button_280x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_blue_button_320x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_blue_button_375x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_blue_logo.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_white_acceptance_mark.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_white_button_280x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_white_button_320x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_white_button_375x48.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/assets/images/solidus_braintree/venmo/venmo_white_logo.svg +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/helpers/solidus_braintree/braintree_checkout_helper.rb +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_braintree_errors.html.erb +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_paypal_cart_button.html.erb +0 -0
- /data/lib/{views/frontend → generators/solidus_braintree/install/templates/app/views}/spree/shared/_paypal_checkout_button.html.erb +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_paypal_messaging.html.erb +0 -0
- /data/{app → lib/generators/solidus_braintree/install/templates/app}/views/spree/shared/_venmo_button.html.erb +0 -0
- /data/lib/generators/solidus_braintree/install/templates/{initializer.rb → config/initializers/solidus_braintree.rb} +0 -0
- /data/spec/support/{capybara.rb → solidus_braintree/capybara.rb} +0 -0
- /data/spec/support/{gateway_helpers.rb → solidus_braintree/gateway_helpers.rb} +0 -0
- /data/spec/support/{vcr.rb → solidus_braintree/vcr.rb} +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 29c687c74a49c23dce595b8469774c1791b20ca32a634a5cb7cf732fc792c639
|
|
4
|
+
data.tar.gz: aa787422374836f1a6352599b57bb98aea63518ce13c612e53cbafc47ab2d811
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 94c9d30e3c88d47fcf4fab6c4a3c5edb0e72e8a670e6d0a8912864c0f71b68147745349cfa673c803aad93c0efd75e08f53cbb993dc7db6a91043822909fc9e5
|
|
7
|
+
data.tar.gz: 0f9e0362ab7ba67a6923e5998c171f5327446c40ba7e4f549762133616c7acbfb6beea71c16bfc0ef87f52da6c9d59a226e67565fb414c6c99cb3da18c4f1123
|
data/.circleci/config.yml
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
version: 2.1
|
|
2
2
|
|
|
3
3
|
orbs:
|
|
4
|
-
# Required for feature specs.
|
|
5
4
|
browser-tools: circleci/browser-tools@1.1
|
|
6
5
|
|
|
7
6
|
# Always take the latest version of the orb, this allows us to
|
|
@@ -10,21 +9,51 @@ orbs:
|
|
|
10
9
|
# or goes EOL.
|
|
11
10
|
solidusio_extensions: solidusio/extensions@volatile
|
|
12
11
|
|
|
12
|
+
commands:
|
|
13
|
+
test-with-starter-frontend:
|
|
14
|
+
steps:
|
|
15
|
+
- checkout
|
|
16
|
+
- browser-tools/install-chrome
|
|
17
|
+
- run:
|
|
18
|
+
name: Install libvips
|
|
19
|
+
command: |
|
|
20
|
+
sudo apt-get update
|
|
21
|
+
sudo apt-get install -yq libvips-dev
|
|
22
|
+
- solidusio_extensions/test-branch:
|
|
23
|
+
branch: master
|
|
24
|
+
command: |
|
|
25
|
+
export FRONTEND=starter
|
|
26
|
+
sudo gem update --system
|
|
27
|
+
gem install bundler rails
|
|
28
|
+
bin/dummy-app
|
|
29
|
+
bin/rspec
|
|
30
|
+
- solidusio_extensions/store-test-results
|
|
31
|
+
|
|
13
32
|
jobs:
|
|
14
33
|
run-specs-with-postgres:
|
|
15
|
-
executor:
|
|
34
|
+
executor:
|
|
35
|
+
name: solidusio_extensions/postgres
|
|
36
|
+
ruby_version: '3.1'
|
|
16
37
|
steps:
|
|
17
|
-
-
|
|
18
|
-
|
|
38
|
+
- test-with-starter-frontend
|
|
39
|
+
|
|
19
40
|
run-specs-with-mysql:
|
|
20
|
-
executor:
|
|
41
|
+
executor:
|
|
42
|
+
name: solidusio_extensions/mysql
|
|
43
|
+
ruby_version: '3.0'
|
|
21
44
|
steps:
|
|
22
|
-
-
|
|
23
|
-
|
|
45
|
+
- test-with-starter-frontend
|
|
46
|
+
|
|
47
|
+
run-specs-with-sqlite:
|
|
48
|
+
executor:
|
|
49
|
+
name: solidusio_extensions/sqlite
|
|
50
|
+
ruby_version: '2.7'
|
|
51
|
+
steps:
|
|
52
|
+
- test-with-starter-frontend
|
|
53
|
+
|
|
24
54
|
lint-code:
|
|
25
55
|
executor: solidusio_extensions/sqlite-memory
|
|
26
56
|
steps:
|
|
27
|
-
- browser-tools/install-browser-tools
|
|
28
57
|
- solidusio_extensions/lint-code
|
|
29
58
|
|
|
30
59
|
workflows:
|
|
@@ -32,6 +61,7 @@ workflows:
|
|
|
32
61
|
jobs:
|
|
33
62
|
- run-specs-with-postgres
|
|
34
63
|
- run-specs-with-mysql
|
|
64
|
+
- run-specs-with-sqlite
|
|
35
65
|
- lint-code
|
|
36
66
|
|
|
37
67
|
"Weekly run specs against master":
|
|
@@ -45,3 +75,4 @@ workflows:
|
|
|
45
75
|
jobs:
|
|
46
76
|
- run-specs-with-postgres
|
|
47
77
|
- run-specs-with-mysql
|
|
78
|
+
- run-specs-with-sqlite
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -3,6 +3,12 @@ require:
|
|
|
3
3
|
|
|
4
4
|
AllCops:
|
|
5
5
|
NewCops: disable
|
|
6
|
+
TargetRubyVersion: '2.7'
|
|
7
|
+
Exclude:
|
|
8
|
+
- sandbox/**/*
|
|
9
|
+
- dummy-app/**/*
|
|
10
|
+
- spec/dummy/**/*
|
|
11
|
+
- vendor/bundle/**/*
|
|
6
12
|
|
|
7
13
|
Layout/FirstArgumentIndentation:
|
|
8
14
|
EnforcedStyle: consistent
|
|
@@ -72,7 +78,8 @@ RSpec/MultipleMemoizedHelpers:
|
|
|
72
78
|
- spec/models/solidus_braintree/response_spec.rb
|
|
73
79
|
- spec/models/solidus_braintree/gateway_spec.rb
|
|
74
80
|
- spec/controllers/solidus_braintree/client_tokens_controller_spec.rb
|
|
75
|
-
- spec/
|
|
81
|
+
- spec/system/frontend/braintree_credit_card_checkout_spec.rb
|
|
82
|
+
- spec/system/frontend/paypal_checkout_spec.rb
|
|
76
83
|
|
|
77
84
|
Rails/ApplicationRecord:
|
|
78
85
|
Exclude:
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [v3.0.0](https://github.com/solidusio/solidus_braintree/tree/v3.0.0) (2023-03-29)
|
|
4
|
+
|
|
5
|
+
[Full Changelog](https://github.com/solidusio/solidus_braintree/compare/v2.0.0...v3.0.0)
|
|
6
|
+
|
|
7
|
+
**Implemented enhancements:**
|
|
8
|
+
|
|
9
|
+
- Release SolidusBraintree 2.0.0 [\#130](https://github.com/solidusio/solidus_braintree/issues/130)
|
|
10
|
+
|
|
11
|
+
**Merged pull requests:**
|
|
12
|
+
|
|
13
|
+
- Fix: last version supporting SolidusFrontend should be 2.x [\#137](https://github.com/solidusio/solidus_braintree/pull/137) ([gsmendoza](https://github.com/gsmendoza))
|
|
14
|
+
- Fix: user should still be able to disable data collection in a SolidusBraintree hosted form [\#129](https://github.com/solidusio/solidus_braintree/pull/129) ([gsmendoza](https://github.com/gsmendoza))
|
|
15
|
+
- Improve SolidusBraintree README [\#125](https://github.com/solidusio/solidus_braintree/pull/125) ([gsmendoza](https://github.com/gsmendoza))
|
|
16
|
+
- Fix: deprecated version in warning should be 1.x instead of 0.x [\#118](https://github.com/solidusio/solidus_braintree/pull/118) ([gsmendoza](https://github.com/gsmendoza))
|
|
17
|
+
- Migrate database by default [\#117](https://github.com/solidusio/solidus_braintree/pull/117) ([gsmendoza](https://github.com/gsmendoza))
|
|
18
|
+
- Add device data collection [\#116](https://github.com/solidusio/solidus_braintree/pull/116) ([gsmendoza](https://github.com/gsmendoza))
|
|
19
|
+
- Update Solidus dependency to \>= 3.4.0.dev and \< 4 [\#114](https://github.com/solidusio/solidus_braintree/pull/114) ([gsmendoza](https://github.com/gsmendoza))
|
|
20
|
+
- Update SolidusBraintree InstallGenerator to install frontend code [\#112](https://github.com/solidusio/solidus_braintree/pull/112) ([gsmendoza](https://github.com/gsmendoza))
|
|
21
|
+
- Deep stringify the keys of the result params [\#111](https://github.com/solidusio/solidus_braintree/pull/111) ([gsmendoza](https://github.com/gsmendoza))
|
|
22
|
+
- Add Response to log entry permitted classes [\#109](https://github.com/solidusio/solidus_braintree/pull/109) ([gsmendoza](https://github.com/gsmendoza))
|
|
23
|
+
- Make Solidus Braintree compatible with Starter Frontend [\#102](https://github.com/solidusio/solidus_braintree/pull/102) ([gsmendoza](https://github.com/gsmendoza))
|
|
24
|
+
- Make migrations independent of existing models [\#100](https://github.com/solidusio/solidus_braintree/pull/100) ([elia](https://github.com/elia))
|
|
25
|
+
- Update the SolidusPaypalBraintree namespace to SolidusBraintree [\#99](https://github.com/solidusio/solidus_braintree/pull/99) ([gsmendoza](https://github.com/gsmendoza))
|
|
26
|
+
- Merge the history of Solidus PayPal Braintree into this repository [\#98](https://github.com/solidusio/solidus_braintree/pull/98) ([gsmendoza](https://github.com/gsmendoza))
|
|
27
|
+
- Add stale bot [\#89](https://github.com/solidusio/solidus_braintree/pull/89) ([gsmendoza](https://github.com/gsmendoza))
|
|
28
|
+
- Update to use forked solidus\_frontend when needed [\#88](https://github.com/solidusio/solidus_braintree/pull/88) ([waiting-for-dev](https://github.com/waiting-for-dev))
|
|
29
|
+
- Add deprecation notice to README [\#87](https://github.com/solidusio/solidus_braintree/pull/87) ([seand7565](https://github.com/seand7565))
|
|
30
|
+
- Adopt CircleCI instead of Travis [\#85](https://github.com/solidusio/solidus_braintree/pull/85) ([aldesantis](https://github.com/aldesantis))
|
|
31
|
+
- Suggest setting a value for environment preference [\#82](https://github.com/solidusio/solidus_braintree/pull/82) ([mdesantis](https://github.com/mdesantis))
|
|
32
|
+
- Test suite improvements [\#80](https://github.com/solidusio/solidus_braintree/pull/80) ([aitbw](https://github.com/aitbw))
|
|
33
|
+
- Extension maintenance [\#78](https://github.com/solidusio/solidus_braintree/pull/78) ([aitbw](https://github.com/aitbw))
|
|
34
|
+
- Fix references to Spree.t [\#77](https://github.com/solidusio/solidus_braintree/pull/77) ([skukx](https://github.com/skukx))
|
|
35
|
+
- Remove 2.2 from CI \(EOL\) [\#71](https://github.com/solidusio/solidus_braintree/pull/71) ([jacobherrington](https://github.com/jacobherrington))
|
|
36
|
+
- Fix Travis issue with Solidus old versions \(Factory Bot gem\) [\#70](https://github.com/solidusio/solidus_braintree/pull/70) ([spaghetticode](https://github.com/spaghetticode))
|
|
37
|
+
- Remove versions past EOL from .travis.yml [\#69](https://github.com/solidusio/solidus_braintree/pull/69) ([jacobherrington](https://github.com/jacobherrington))
|
|
38
|
+
- Add Solidus 2.7 to .travis.yml [\#68](https://github.com/solidusio/solidus_braintree/pull/68) ([jacobherrington](https://github.com/jacobherrington))
|
|
39
|
+
|
|
3
40
|
## [v2.0.0](https://github.com/solidusio/solidus_braintree/tree/v2.0.0) (2023-03-17)
|
|
4
41
|
|
|
5
42
|
[Full Changelog](https://github.com/solidusio/solidus_braintree/compare/v1.2.0...v2.0.0)
|
|
@@ -42,35 +79,6 @@
|
|
|
42
79
|
- Use of undefined show\_flash function in frontend [\#31](https://github.com/solidusio/solidus_braintree/issues/31)
|
|
43
80
|
- Select an implementation for how to store non credit card data in Solidus [\#3](https://github.com/solidusio/solidus_braintree/issues/3)
|
|
44
81
|
|
|
45
|
-
**Merged pull requests:**
|
|
46
|
-
|
|
47
|
-
- Fix: last version supporting SolidusFrontend should be 2.x [\#137](https://github.com/solidusio/solidus_braintree/pull/137) ([gsmendoza](https://github.com/gsmendoza))
|
|
48
|
-
- Fix: user should still be able to disable data collection in a SolidusBraintree hosted form [\#129](https://github.com/solidusio/solidus_braintree/pull/129) ([gsmendoza](https://github.com/gsmendoza))
|
|
49
|
-
- Improve SolidusBraintree README [\#125](https://github.com/solidusio/solidus_braintree/pull/125) ([gsmendoza](https://github.com/gsmendoza))
|
|
50
|
-
- Fix: deprecated version in warning should be 1.x instead of 0.x [\#118](https://github.com/solidusio/solidus_braintree/pull/118) ([gsmendoza](https://github.com/gsmendoza))
|
|
51
|
-
- Migrate database by default [\#117](https://github.com/solidusio/solidus_braintree/pull/117) ([gsmendoza](https://github.com/gsmendoza))
|
|
52
|
-
- Add device data collection [\#116](https://github.com/solidusio/solidus_braintree/pull/116) ([gsmendoza](https://github.com/gsmendoza))
|
|
53
|
-
- Update Solidus dependency to \>= 3.4.0.dev and \< 4 [\#114](https://github.com/solidusio/solidus_braintree/pull/114) ([gsmendoza](https://github.com/gsmendoza))
|
|
54
|
-
- Update SolidusBraintree InstallGenerator to install frontend code [\#112](https://github.com/solidusio/solidus_braintree/pull/112) ([gsmendoza](https://github.com/gsmendoza))
|
|
55
|
-
- Deep stringify the keys of the result params [\#111](https://github.com/solidusio/solidus_braintree/pull/111) ([gsmendoza](https://github.com/gsmendoza))
|
|
56
|
-
- Add Response to log entry permitted classes [\#109](https://github.com/solidusio/solidus_braintree/pull/109) ([gsmendoza](https://github.com/gsmendoza))
|
|
57
|
-
- Make Solidus Braintree compatible with Starter Frontend [\#102](https://github.com/solidusio/solidus_braintree/pull/102) ([gsmendoza](https://github.com/gsmendoza))
|
|
58
|
-
- Make migrations independent of existing models [\#100](https://github.com/solidusio/solidus_braintree/pull/100) ([elia](https://github.com/elia))
|
|
59
|
-
- Update the SolidusPaypalBraintree namespace to SolidusBraintree [\#99](https://github.com/solidusio/solidus_braintree/pull/99) ([gsmendoza](https://github.com/gsmendoza))
|
|
60
|
-
- Merge the history of Solidus PayPal Braintree into this repository [\#98](https://github.com/solidusio/solidus_braintree/pull/98) ([gsmendoza](https://github.com/gsmendoza))
|
|
61
|
-
- Add stale bot [\#89](https://github.com/solidusio/solidus_braintree/pull/89) ([gsmendoza](https://github.com/gsmendoza))
|
|
62
|
-
- Update to use forked solidus\_frontend when needed [\#88](https://github.com/solidusio/solidus_braintree/pull/88) ([waiting-for-dev](https://github.com/waiting-for-dev))
|
|
63
|
-
- Add deprecation notice to README [\#87](https://github.com/solidusio/solidus_braintree/pull/87) ([seand7565](https://github.com/seand7565))
|
|
64
|
-
- Adopt CircleCI instead of Travis [\#85](https://github.com/solidusio/solidus_braintree/pull/85) ([aldesantis](https://github.com/aldesantis))
|
|
65
|
-
- Suggest setting a value for environment preference [\#82](https://github.com/solidusio/solidus_braintree/pull/82) ([mdesantis](https://github.com/mdesantis))
|
|
66
|
-
- Test suite improvements [\#80](https://github.com/solidusio/solidus_braintree/pull/80) ([aitbw](https://github.com/aitbw))
|
|
67
|
-
- Extension maintenance [\#78](https://github.com/solidusio/solidus_braintree/pull/78) ([aitbw](https://github.com/aitbw))
|
|
68
|
-
- Fix references to Spree.t [\#77](https://github.com/solidusio/solidus_braintree/pull/77) ([skukx](https://github.com/skukx))
|
|
69
|
-
- Remove 2.2 from CI \(EOL\) [\#71](https://github.com/solidusio/solidus_braintree/pull/71) ([jacobherrington](https://github.com/jacobherrington))
|
|
70
|
-
- Fix Travis issue with Solidus old versions \(Factory Bot gem\) [\#70](https://github.com/solidusio/solidus_braintree/pull/70) ([spaghetticode](https://github.com/spaghetticode))
|
|
71
|
-
- Remove versions past EOL from .travis.yml [\#69](https://github.com/solidusio/solidus_braintree/pull/69) ([jacobherrington](https://github.com/jacobherrington))
|
|
72
|
-
- Add Solidus 2.7 to .travis.yml [\#68](https://github.com/solidusio/solidus_braintree/pull/68) ([jacobherrington](https://github.com/jacobherrington))
|
|
73
|
-
|
|
74
82
|
## [v1.2.0](https://github.com/solidusio/solidus_braintree/tree/v1.2.0) (2018-05-25)
|
|
75
83
|
|
|
76
84
|
[Full Changelog](https://github.com/solidusio/solidus_braintree/compare/v1.1.0...v1.2.0)
|
data/Rakefile
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//= link_tree ../images
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//= require solidus_braintree/constants
|
|
2
|
-
//= require solidus_braintree/client
|
|
3
|
-
//= require solidus_braintree/promise
|
|
4
|
-
//= require solidus_braintree/hosted_form
|
|
1
|
+
//= require spree/backend/solidus_braintree/constants
|
|
2
|
+
//= require spree/backend/solidus_braintree/client
|
|
3
|
+
//= require spree/backend/solidus_braintree/promise
|
|
4
|
+
//= require spree/backend/solidus_braintree/hosted_form
|
|
5
5
|
|
|
6
6
|
$(function() {
|
|
7
7
|
var $paymentForm = $("#new_payment"),
|
|
@@ -364,6 +364,10 @@ module SolidusBraintree
|
|
|
364
364
|
params[:payment_method_nonce] = source.nonce
|
|
365
365
|
end
|
|
366
366
|
|
|
367
|
+
if source&.device_data
|
|
368
|
+
params[:device_data] = source.device_data
|
|
369
|
+
end
|
|
370
|
+
|
|
367
371
|
if source.paypal?
|
|
368
372
|
params[:shipping] = braintree_shipping_address(options)
|
|
369
373
|
end
|
|
@@ -29,7 +29,7 @@ module SolidusBraintree
|
|
|
29
29
|
# For error responses we want to have the CVV code
|
|
30
30
|
cvv_result: transaction&.cvv_response_code
|
|
31
31
|
)
|
|
32
|
-
new(false, error_message(result), result.params, options)
|
|
32
|
+
new(false, error_message(result), result.params.deep_stringify_keys, options)
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
def response_options(transaction)
|
|
@@ -25,6 +25,7 @@ module SolidusBraintree
|
|
|
25
25
|
|
|
26
26
|
validates :payment_type, inclusion: [PAYPAL, APPLE_PAY, VENMO, CREDIT_CARD]
|
|
27
27
|
|
|
28
|
+
before_validation :clear_device_data_if_blank
|
|
28
29
|
before_save :clear_paypal_funding_source, unless: :paypal?
|
|
29
30
|
|
|
30
31
|
scope(:with_payment_profile, -> { joins(:customer) })
|
|
@@ -128,6 +129,10 @@ module SolidusBraintree
|
|
|
128
129
|
@braintree_client ||= payment_method.try(:braintree)
|
|
129
130
|
end
|
|
130
131
|
|
|
132
|
+
def clear_device_data_if_blank
|
|
133
|
+
self.device_data = nil if device_data.blank?
|
|
134
|
+
end
|
|
135
|
+
|
|
131
136
|
def clear_paypal_funding_source
|
|
132
137
|
self.paypal_funding_source = nil
|
|
133
138
|
end
|
data/bin/dummy-app
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
extension_name="solidus_braintree"
|
|
6
|
+
|
|
7
|
+
# Stay away from the bundler env of the containing extension.
|
|
8
|
+
function unbundled {
|
|
9
|
+
ruby -rbundler -e'b = proc {system *ARGV}; Bundler.respond_to?(:with_unbundled_env) ? Bundler.with_unbundled_env(&b) : Bundler.with_clean_env(&b)' -- "$@"
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
# "sqlite" is set by the ORB extension instead of "sqlite3",
|
|
13
|
+
# all other options are already in the format expected by `rails new`.
|
|
14
|
+
test "$DB" = "sqlite" && export DB="sqlite3"
|
|
15
|
+
|
|
16
|
+
rm -rf ./dummy-app
|
|
17
|
+
rails new dummy-app \
|
|
18
|
+
--database=${DB:-sqlite3} \
|
|
19
|
+
--skip-git \
|
|
20
|
+
--skip-keeps \
|
|
21
|
+
--skip-rc \
|
|
22
|
+
--skip-bootsnap \
|
|
23
|
+
--skip-test
|
|
24
|
+
|
|
25
|
+
if [ ! -d "dummy-app" ]; then
|
|
26
|
+
echo 'dummy-app rails application failed'
|
|
27
|
+
exit 1
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
cd ./dummy-app
|
|
31
|
+
unbundled bundle add solidus --github solidusio/solidus --branch "${BRANCH:-master}" --version '> 0.a'
|
|
32
|
+
unbundled bundle exec rake db:drop db:create
|
|
33
|
+
unbundled bundle exec rails generate solidus:install --auto-accept --payment-method=none --no-seed --no-sample "$@"
|
|
34
|
+
unbundled bundle add $extension_name --path ..
|
|
35
|
+
unbundled bundle exec rails generate $extension_name:install --migrate --specs=all
|
|
36
|
+
|
|
37
|
+
|
data/bin/rails-dummy-app
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
root = "#{__dir__}/.."
|
|
4
|
+
app_root = "#{root}/dummy-app"
|
|
5
|
+
|
|
6
|
+
unless File.exist? "#{app_root}/bin/rails"
|
|
7
|
+
warn 'Creating the dummy-app app...'
|
|
8
|
+
Dir.chdir root do
|
|
9
|
+
system "#{root}/bin/dummy-app" or begin
|
|
10
|
+
warn 'Automatic creation of the dummy-app app failed'
|
|
11
|
+
exit 1
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
Dir.chdir app_root
|
|
17
|
+
exec "#{app_root}/bin/rails", *ARGV
|
data/bin/rspec
ADDED
data/bin/sandbox
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
|
|
3
3
|
set -e
|
|
4
|
-
if [ -n "$DEBUG" ]
|
|
5
|
-
then
|
|
6
|
-
set -x
|
|
7
|
-
fi
|
|
8
4
|
|
|
9
5
|
case "$DB" in
|
|
10
6
|
postgres|postgresql)
|
|
@@ -13,51 +9,37 @@ postgres|postgresql)
|
|
|
13
9
|
mysql)
|
|
14
10
|
RAILSDB="mysql"
|
|
15
11
|
;;
|
|
16
|
-
|
|
17
|
-
RAILSDB="sqlite3"
|
|
18
|
-
;;
|
|
19
|
-
'')
|
|
20
|
-
echo "~~> Use 'export DB=[postgres|mysql|sqlite]' to control the DB adapter"
|
|
12
|
+
sqlite|'')
|
|
21
13
|
RAILSDB="sqlite3"
|
|
22
14
|
;;
|
|
23
15
|
*)
|
|
24
|
-
echo "Invalid
|
|
25
|
-
echo "Please use 'postgres', 'mysql', or 'sqlite' instead."
|
|
16
|
+
echo "Invalid DB specified: $DB"
|
|
26
17
|
exit 1
|
|
27
18
|
;;
|
|
28
19
|
esac
|
|
29
|
-
echo "~~> Using $RAILSDB as the database engine"
|
|
30
|
-
|
|
31
|
-
if [ -z "$SOLIDUS_BRANCH" ]
|
|
32
|
-
then
|
|
33
|
-
echo "~~> Use 'export SOLIDUS_BRANCH=[master|v3.2|...]' to control the Solidus branch"
|
|
34
|
-
SOLIDUS_BRANCH="master"
|
|
35
|
-
fi
|
|
36
|
-
echo "~~> Using branch $SOLIDUS_BRANCH of solidus"
|
|
37
20
|
|
|
38
|
-
if [ -z
|
|
21
|
+
if [ ! -z $SOLIDUS_BRANCH ]
|
|
39
22
|
then
|
|
40
|
-
|
|
41
|
-
|
|
23
|
+
BRANCH=$SOLIDUS_BRANCH
|
|
24
|
+
else
|
|
25
|
+
BRANCH="master"
|
|
42
26
|
fi
|
|
43
|
-
echo "~~> Using branch $SOLIDUS_FRONTEND as the solidus frontend"
|
|
44
27
|
|
|
45
28
|
extension_name="solidus_braintree"
|
|
46
29
|
|
|
47
30
|
# Stay away from the bundler env of the containing extension.
|
|
48
31
|
function unbundled {
|
|
49
|
-
ruby -rbundler -e'b = proc {system *ARGV}; Bundler.respond_to?(:with_unbundled_env) ? Bundler.with_unbundled_env(&b) : Bundler.with_clean_env(&b)' -- $@
|
|
32
|
+
ruby -rbundler -e'b = proc {system *ARGV}; Bundler.respond_to?(:with_unbundled_env) ? Bundler.with_unbundled_env(&b) : Bundler.with_clean_env(&b)' -- "$@"
|
|
50
33
|
}
|
|
51
34
|
|
|
52
35
|
rm -rf ./sandbox
|
|
53
|
-
|
|
54
|
-
--
|
|
36
|
+
rails new sandbox \
|
|
37
|
+
--database="$RAILSDB" \
|
|
55
38
|
--skip-git \
|
|
56
39
|
--skip-keeps \
|
|
57
40
|
--skip-rc \
|
|
58
|
-
--skip-
|
|
59
|
-
--skip-test
|
|
60
|
-
--skip-javascript
|
|
41
|
+
--skip-bootsnap \
|
|
42
|
+
--skip-test
|
|
61
43
|
|
|
62
44
|
if [ ! -d "sandbox" ]; then
|
|
63
45
|
echo 'sandbox rails application failed'
|
|
@@ -65,39 +47,15 @@ if [ ! -d "sandbox" ]; then
|
|
|
65
47
|
fi
|
|
66
48
|
|
|
67
49
|
cd ./sandbox
|
|
68
|
-
|
|
69
|
-
gem 'solidus', github: 'solidusio/solidus', branch: '$SOLIDUS_BRANCH'
|
|
70
|
-
gem 'rails-i18n'
|
|
71
|
-
gem 'solidus_i18n'
|
|
72
|
-
|
|
73
|
-
# This Braintree extension contains a user decorator, so the user class must be loaded first.
|
|
74
|
-
gem "solidus_auth_devise", "~> 2.5"
|
|
75
|
-
gem '$extension_name', path: '..'
|
|
76
|
-
|
|
77
|
-
group :test, :development do
|
|
78
|
-
platforms :mri do
|
|
79
|
-
gem 'pry-byebug'
|
|
80
|
-
end
|
|
81
|
-
end
|
|
82
|
-
RUBY
|
|
83
|
-
|
|
84
|
-
unbundled bundle install --gemfile Gemfile
|
|
85
|
-
|
|
50
|
+
unbundled bundle add solidus --github solidusio/solidus --branch "${BRANCH:-master}" --version '> 0.a'
|
|
86
51
|
unbundled bundle exec rake db:drop db:create
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
unbundled bundle exec rails generate
|
|
90
|
-
--auto-accept \
|
|
91
|
-
--user_class=Spree::User \
|
|
92
|
-
--enforce_available_locales=true \
|
|
93
|
-
--authentication="devise" \
|
|
94
|
-
--payment-method=none \
|
|
95
|
-
--frontend=${SOLIDUS_FRONTEND} \
|
|
96
|
-
$@
|
|
97
|
-
|
|
98
|
-
unbundled bundle exec rails generate solidus:auth:install --auto-run-migrations
|
|
99
|
-
unbundled bundle exec rails generate ${extension_name}:install --auto-run-migrations
|
|
52
|
+
unbundled bundle exec rails generate solidus:install --payment-method=none --auto-accept "$@"
|
|
53
|
+
unbundled bundle add ${extension_name} --path '../'
|
|
54
|
+
unbundled bundle exec rails generate ${extension_name}:install --frontend=starter --migrate=true
|
|
100
55
|
|
|
101
56
|
echo
|
|
102
|
-
echo "🚀 Sandbox app successfully created for $extension_name!"
|
|
103
|
-
echo "
|
|
57
|
+
echo "🚀 Sandbox app successfully created for ${extension_name}!"
|
|
58
|
+
echo "🚀 Using $RAILSDB and Solidus $BRANCH"
|
|
59
|
+
echo "🚀 Use 'export DB=[postgres|mysql|sqlite]' to control the DB adapter"
|
|
60
|
+
echo "🚀 Use 'export SOLIDUS_BRANCH=<BRANCH-NAME>' to control the Solidus version"
|
|
61
|
+
echo "🚀 This app is intended for test purposes."
|