shopify_app 18.1.1 → 20.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.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +3 -3
  3. data/.gitignore +1 -0
  4. data/CHANGELOG.md +39 -3
  5. data/Gemfile +3 -2
  6. data/Gemfile.lock +128 -162
  7. data/README.md +0 -1
  8. data/Rakefile +4 -3
  9. data/app/assets/javascripts/shopify_app/app_bridge_3.1.1.js +10 -0
  10. data/app/assets/javascripts/shopify_app/app_bridge_redirect.js +2 -3
  11. data/app/assets/javascripts/shopify_app/app_bridge_utils_3.1.1.js +1 -0
  12. data/app/assets/javascripts/shopify_app/redirect.js +6 -8
  13. data/app/controllers/concerns/shopify_app/authenticated.rb +3 -0
  14. data/app/controllers/concerns/shopify_app/ensure_authenticated_links.rb +1 -1
  15. data/app/controllers/concerns/shopify_app/require_known_shop.rb +1 -0
  16. data/app/controllers/concerns/shopify_app/shop_access_scopes_verification.rb +1 -1
  17. data/app/controllers/shopify_app/authenticated_controller.rb +1 -0
  18. data/app/controllers/shopify_app/callback_controller.rb +49 -134
  19. data/app/controllers/shopify_app/sessions_controller.rb +26 -131
  20. data/app/controllers/shopify_app/webhooks_controller.rb +5 -23
  21. data/app/views/shopify_app/sessions/enable_cookies.html.erb +1 -1
  22. data/app/views/shopify_app/sessions/request_storage_access.html.erb +1 -1
  23. data/app/views/shopify_app/sessions/top_level_interaction.html.erb +1 -1
  24. data/app/views/shopify_app/shared/redirect.html.erb +1 -1
  25. data/config/routes.rb +20 -12
  26. data/docs/Releasing.md +1 -1
  27. data/docs/Troubleshooting.md +0 -3
  28. data/docs/Upgrading.md +116 -14
  29. data/docs/shopify_app/webhooks.md +1 -1
  30. data/lib/generators/shopify_app/add_after_authenticate_job/add_after_authenticate_job_generator.rb +10 -9
  31. data/lib/generators/shopify_app/add_after_authenticate_job/templates/after_authenticate_job.rb +1 -0
  32. data/lib/generators/shopify_app/add_marketing_activity_extension/add_marketing_activity_extension_generator.rb +4 -3
  33. data/lib/generators/shopify_app/add_webhook/add_webhook_generator.rb +13 -12
  34. data/lib/generators/shopify_app/add_webhook/templates/webhook_job.rb.tt +9 -1
  35. data/lib/generators/shopify_app/app_proxy_controller/app_proxy_controller_generator.rb +7 -6
  36. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_controller.rb +2 -1
  37. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_route.rb +1 -1
  38. data/lib/generators/shopify_app/authenticated_controller/authenticated_controller_generator.rb +3 -3
  39. data/lib/generators/shopify_app/controllers/controllers_generator.rb +4 -3
  40. data/lib/generators/shopify_app/home_controller/home_controller_generator.rb +11 -15
  41. data/lib/generators/shopify_app/home_controller/templates/home_controller.rb +2 -2
  42. data/lib/generators/shopify_app/home_controller/templates/index.html.erb +3 -3
  43. data/lib/generators/shopify_app/install/install_generator.rb +25 -74
  44. data/lib/generators/shopify_app/install/templates/embedded_app.html.erb +1 -1
  45. data/lib/generators/shopify_app/install/templates/session_store.rb +2 -1
  46. data/lib/generators/shopify_app/install/templates/shopify_app.rb.tt +33 -5
  47. data/lib/generators/shopify_app/products_controller/products_controller_generator.rb +3 -3
  48. data/lib/generators/shopify_app/products_controller/templates/products_controller.rb +1 -1
  49. data/lib/generators/shopify_app/rotate_shopify_token_job/rotate_shopify_token_job_generator.rb +4 -4
  50. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token.rake +1 -0
  51. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token_job.rb +1 -1
  52. data/lib/generators/shopify_app/routes/routes_generator.rb +6 -5
  53. data/lib/generators/shopify_app/routes/templates/routes.rb +5 -5
  54. data/lib/generators/shopify_app/shop_model/shop_model_generator.rb +11 -10
  55. data/lib/generators/shopify_app/shop_model/templates/shop.rb +1 -0
  56. data/lib/generators/shopify_app/shopify_app_generator.rb +4 -3
  57. data/lib/generators/shopify_app/user_model/templates/user.rb +1 -0
  58. data/lib/generators/shopify_app/user_model/user_model_generator.rb +11 -10
  59. data/lib/generators/shopify_app/views/views_generator.rb +4 -3
  60. data/lib/shopify_app/access_scopes/shop_strategy.rb +2 -2
  61. data/lib/shopify_app/access_scopes/user_strategy.rb +4 -4
  62. data/lib/shopify_app/configuration.rb +33 -14
  63. data/lib/shopify_app/controller_concerns/app_proxy_verification.rb +4 -3
  64. data/lib/shopify_app/controller_concerns/csrf_protection.rb +2 -1
  65. data/lib/shopify_app/controller_concerns/embedded_app.rb +4 -3
  66. data/lib/shopify_app/controller_concerns/ensure_billing.rb +254 -0
  67. data/lib/shopify_app/controller_concerns/itp.rb +3 -3
  68. data/lib/shopify_app/controller_concerns/localization.rb +1 -0
  69. data/lib/shopify_app/controller_concerns/login_protection.rb +81 -73
  70. data/lib/shopify_app/controller_concerns/payload_verification.rb +3 -2
  71. data/lib/shopify_app/controller_concerns/webhook_verification.rb +2 -1
  72. data/lib/shopify_app/engine.rb +7 -15
  73. data/lib/shopify_app/jobs/scripttags_manager_job.rb +2 -2
  74. data/lib/shopify_app/jobs/webhooks_manager_job.rb +4 -5
  75. data/lib/shopify_app/managers/scripttags_manager.rb +11 -4
  76. data/lib/shopify_app/managers/webhooks_manager.rb +42 -44
  77. data/lib/shopify_app/middleware/jwt_middleware.rb +5 -4
  78. data/lib/shopify_app/session/in_memory_session_store.rb +1 -0
  79. data/lib/shopify_app/session/in_memory_shop_session_store.rb +2 -1
  80. data/lib/shopify_app/session/in_memory_user_session_store.rb +1 -0
  81. data/lib/shopify_app/session/jwt.rb +9 -8
  82. data/lib/shopify_app/session/null_user_session_store.rb +2 -1
  83. data/lib/shopify_app/session/session_repository.rb +37 -0
  84. data/lib/shopify_app/session/session_storage.rb +4 -6
  85. data/lib/shopify_app/session/shop_session_storage.rb +6 -6
  86. data/lib/shopify_app/session/shop_session_storage_with_scopes.rb +7 -8
  87. data/lib/shopify_app/session/user_session_storage.rb +19 -6
  88. data/lib/shopify_app/session/user_session_storage_with_scopes.rb +22 -9
  89. data/lib/shopify_app/test_helpers/all.rb +2 -1
  90. data/lib/shopify_app/test_helpers/webhook_verification_helper.rb +4 -3
  91. data/lib/shopify_app/utils.rb +4 -10
  92. data/lib/shopify_app/version.rb +2 -1
  93. data/lib/shopify_app.rb +36 -40
  94. data/package.json +1 -1
  95. data/shopify_app.gemspec +22 -21
  96. data/yarn.lock +9 -9
  97. metadata +50 -53
  98. data/app/assets/javascripts/shopify_app/app_bridge_1.30.0.js +0 -1
  99. data/lib/generators/shopify_app/install/templates/omniauth.rb +0 -4
  100. data/lib/generators/shopify_app/install/templates/shopify_provider.rb.tt +0 -8
  101. data/lib/generators/shopify_app/install/templates/user_agent.rb +0 -6
  102. data/lib/shopify_app/middleware/same_site_cookie_middleware.rb +0 -34
  103. data/lib/shopify_app/omniauth/omniauth_configuration.rb +0 -64
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4571927d22f1c18f5eef9e632f8ff6b1ebd6b349535326689329ff58f3671db1
4
- data.tar.gz: 64042b37063c63155d438168bac3d67bca792b88ed094a0e19a1b67fc6f3d157
3
+ metadata.gz: 90ae6248163ec5df43b7859362604cd54d3c3402a13c34d47b81db36427262b9
4
+ data.tar.gz: f07b53d9d4d27e1c71531df33ac0ac2e1bc3d5c66244eda39a263eaaefa69fcf
5
5
  SHA512:
6
- metadata.gz: 7eea139dac2c0ad527e52b486b027ede7185f9d457210f5fcb38de38c983e2f8156909dcee422f0204054d1b955375b9658522587e7561fcba3a8e7948e6cb93
7
- data.tar.gz: b2baed7f9cd833f4f1fcf54ae8ffc54327f2afc259c786b7dd7ec579d7b2010b518283c70a2004ad1c0529221b97480659672f5c064e79710fd6285437236b9b
6
+ metadata.gz: 3e37d67ae0d3449af0b9027345f66a3783bf8bc11323977b400b1af0de0c77dd56751453047271bb30ce66e7a840a6c65f56e574590697ca71a4c4267be174a3
7
+ data.tar.gz: 3662b90bd2de575ba86a799ffb4c547d11132ba93e9655e8d53ae14c078b9e412fbc965404b65cf5665f4f7ee6d2cc3f12dd87de9ee0a92ce6b36ad4cad07fb1
@@ -2,9 +2,9 @@ name: CI
2
2
 
3
3
  on:
4
4
  push:
5
- branches: [ master ]
5
+ branches: [ main ]
6
6
  pull_request:
7
- branches: [ master ]
7
+ branches: [ main ]
8
8
 
9
9
  jobs:
10
10
  build:
@@ -12,7 +12,7 @@ jobs:
12
12
  name: Ruby ${{ matrix.version }}
13
13
  strategy:
14
14
  matrix:
15
- version: ['2.6', '2.7', '3.0']
15
+ version: ['2.7', '3.0']
16
16
 
17
17
  steps:
18
18
  - uses: actions/checkout@v2
data/.gitignore CHANGED
@@ -7,6 +7,7 @@ doc/
7
7
  *.log
8
8
  *.sqlite3
9
9
  test/tmp/*
10
+ test/.generated/*
10
11
  .idea
11
12
  # ignore sprockets cache
12
13
  /test/dummy/tmp/*
data/CHANGELOG.md CHANGED
@@ -1,10 +1,46 @@
1
+ Unreleased
2
+ ----------
3
+
4
+ 20.0.0 (July 4, 2022)
5
+ ----------
6
+
7
+ * Bump [Shopify API](https://github.com/Shopify/shopify-api-ruby) to version 11.0.0. It includes [these updates](https://github.com/Shopify/shopify-api-ruby/blob/main/CHANGELOG.md#version-1100). The breaking change relates to the removal of API version `2021-07` support.
8
+ * Internal update, adding App Bridge 3 for redirect (only). [#1458](https://github.com/Shopify/shopify_app/pull/1458)
9
+
10
+ 19.1.0 (June 20, 2022)
11
+ ----------
12
+
13
+ * Add the `login_callback_url` config to allow overwriting that route as well, and mount the engine routes based on the configurations. [#1445](https://github.com/Shopify/shopify_app/pull/1445)
14
+ * Add special headers when returning 401s from LoginProtection. [#1450](https://github.com/Shopify/shopify_app/pull/1450)
15
+ * Add a new `billing` configuration which takes in a `ShopifyApp::BillingConfiguration` object and checks for payment on controllers with `Authenticated`. [#1455](https://github.com/Shopify/shopify_app/pull/1455)
16
+
17
+ 19.0.2 (April 27, 2022)
18
+ ----------
19
+
20
+ * Fix regression in apps using online tokens. [#1413](https://github.com/Shopify/shopify_app/pull/1413)
21
+ * Bump [Shopify API](https://github.com/Shopify/shopify_api) to version 10.0.3. It includes [these fixes](https://github.com/Shopify/shopify_api/blob/main/CHANGELOG.md#version-1003).
22
+
23
+ 19.0.1 (April 11, 2022)
24
+ ----------
25
+ * Bump Shopify API (https://github.com/Shopify/shopify_api) to version 10.0.2. This update includes patch fixes since the initial v10 release.
26
+
27
+ 19.0.0 (April 6, 2022)
28
+ ----------
29
+ * Use v10 of the Shopify API (https://github.com/Shopify/shopify_api). This update requires changes to an app - please refer to the [migration guide](https://github.com/Shopify/shopify_app/blob/main/docs/Upgrading.md) for details.
30
+ BREAKING, please see migration notes.
31
+
32
+ 18.1.2 (Mar 3, 2022)
33
+ ----------
34
+ * Use the App Bridge 2.0 redirect when attempting to break out of an iframe. This happens when an app is installed, requires new access scopes, or re-authentication because the login session is expired. [#1376](https://github.com/Shopify/shopify_app/pull/1376)
35
+
1
36
  18.1.1 (Feb 2, 2022)
37
+ ----------
2
38
  * Fix bug causing `unsafe-inline` CSP violation. [#1362](https://github.com/Shopify/shopify_app/pull/1362)
3
39
 
4
40
  18.1.0 (Jan 28, 2022)
5
41
  ----------
6
42
  * Support Rails 7 [#1354](https://github.com/Shopify/shopify_app/pull/1354)
7
- * Fix webhooks handling in Ruby 3 [#1342](https://github.com/Shopify/shopify_app/pull/1342)
43
+ * Fix webhooks handling in Ruby 3 [#1342](https://github.com/Shopify/shopify_app/pull/1342)
8
44
  * Update to Ruby 3 and drop support to Ruby 2.5 [#1359](https://github.com/Shopify/shopify_app/pull/1359)
9
45
 
10
46
  18.0.4 (Jan 27, 2022)
@@ -28,7 +64,7 @@
28
64
 
29
65
  18.0.0 (May 3, 2021)
30
66
  ----------
31
- * Support OmniAuth 2.x
67
+ * Support OmniAuth 2.x
32
68
  * If your app has custom OmniAuth configuration, please refer to the [OmniAuth 2.0 upgrade guide](https://github.com/omniauth/omniauth/wiki/Upgrading-to-2.0).
33
69
  * Support App Bridge version 2.x in the Embedded App layout. [#1241](https://github.com/Shopify/shopify_app/pull/1241)
34
70
 
@@ -58,7 +94,7 @@
58
94
 
59
95
  17.0.4 (January 25, 2021)
60
96
  ----------
61
- * Redirect user to login page if shopify domain is not found in the `EnsureAuthenticatedLinks` concern [#1158](https://github.com/Shopify/shopify_app/pull/1158)
97
+ * Redirect user to login page if shopify domain is not found in the `EnsureAuthenticatedLinks` concern [#1158](https://github.com/Shopify/shopify_app/pull/1158)
62
98
 
63
99
  17.0.3 (January 22, 2021)
64
100
  ----------
data/Gemfile CHANGED
@@ -1,11 +1,12 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  source "https://rubygems.org"
3
4
 
4
5
  # Specify your gem's dependencies in shopify_app.gemspec
5
6
  gemspec
6
7
 
7
- gem 'rails-controller-testing', group: :test
8
+ gem "rails-controller-testing", group: :test
8
9
 
9
10
  group :rubocop do
10
- gem 'rubocop-shopify', require: false
11
+ gem "rubocop-shopify", require: false
11
12
  end
data/Gemfile.lock CHANGED
@@ -1,80 +1,80 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shopify_app (18.1.1)
5
- browser_sniffer (~> 1.4.0)
4
+ shopify_app (20.0.0)
5
+ activeresource
6
+ browser_sniffer (~> 2.0)
6
7
  jwt (>= 2.2.3)
7
- omniauth-rails_csrf_protection
8
- omniauth-shopify-oauth2 (~> 2.3)
9
8
  rails (> 5.2.1)
10
9
  redirect_safely (~> 1.0)
11
- shopify_api (~> 9.4)
10
+ shopify_api (~> 11.0)
11
+ sprockets-rails (>= 2.0.0)
12
12
 
13
13
  GEM
14
14
  remote: https://rubygems.org/
15
15
  specs:
16
- actioncable (6.1.4.4)
17
- actionpack (= 6.1.4.4)
18
- activesupport (= 6.1.4.4)
16
+ actioncable (6.1.5)
17
+ actionpack (= 6.1.5)
18
+ activesupport (= 6.1.5)
19
19
  nio4r (~> 2.0)
20
20
  websocket-driver (>= 0.6.1)
21
- actionmailbox (6.1.4.4)
22
- actionpack (= 6.1.4.4)
23
- activejob (= 6.1.4.4)
24
- activerecord (= 6.1.4.4)
25
- activestorage (= 6.1.4.4)
26
- activesupport (= 6.1.4.4)
21
+ actionmailbox (6.1.5)
22
+ actionpack (= 6.1.5)
23
+ activejob (= 6.1.5)
24
+ activerecord (= 6.1.5)
25
+ activestorage (= 6.1.5)
26
+ activesupport (= 6.1.5)
27
27
  mail (>= 2.7.1)
28
- actionmailer (6.1.4.4)
29
- actionpack (= 6.1.4.4)
30
- actionview (= 6.1.4.4)
31
- activejob (= 6.1.4.4)
32
- activesupport (= 6.1.4.4)
28
+ actionmailer (6.1.5)
29
+ actionpack (= 6.1.5)
30
+ actionview (= 6.1.5)
31
+ activejob (= 6.1.5)
32
+ activesupport (= 6.1.5)
33
33
  mail (~> 2.5, >= 2.5.4)
34
34
  rails-dom-testing (~> 2.0)
35
- actionpack (6.1.4.4)
36
- actionview (= 6.1.4.4)
37
- activesupport (= 6.1.4.4)
35
+ actionpack (6.1.5)
36
+ actionview (= 6.1.5)
37
+ activesupport (= 6.1.5)
38
38
  rack (~> 2.0, >= 2.0.9)
39
39
  rack-test (>= 0.6.3)
40
40
  rails-dom-testing (~> 2.0)
41
41
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
42
- actiontext (6.1.4.4)
43
- actionpack (= 6.1.4.4)
44
- activerecord (= 6.1.4.4)
45
- activestorage (= 6.1.4.4)
46
- activesupport (= 6.1.4.4)
42
+ actiontext (6.1.5)
43
+ actionpack (= 6.1.5)
44
+ activerecord (= 6.1.5)
45
+ activestorage (= 6.1.5)
46
+ activesupport (= 6.1.5)
47
47
  nokogiri (>= 1.8.5)
48
- actionview (6.1.4.4)
49
- activesupport (= 6.1.4.4)
48
+ actionview (6.1.5)
49
+ activesupport (= 6.1.5)
50
50
  builder (~> 3.1)
51
51
  erubi (~> 1.4)
52
52
  rails-dom-testing (~> 2.0)
53
53
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
54
- activejob (6.1.4.4)
55
- activesupport (= 6.1.4.4)
54
+ activejob (6.1.5)
55
+ activesupport (= 6.1.5)
56
56
  globalid (>= 0.3.6)
57
- activemodel (6.1.4.4)
58
- activesupport (= 6.1.4.4)
57
+ activemodel (6.1.5)
58
+ activesupport (= 6.1.5)
59
59
  activemodel-serializers-xml (1.0.2)
60
60
  activemodel (> 5.x)
61
61
  activesupport (> 5.x)
62
62
  builder (~> 3.1)
63
- activerecord (6.1.4.4)
64
- activemodel (= 6.1.4.4)
65
- activesupport (= 6.1.4.4)
66
- activeresource (5.1.1)
67
- activemodel (>= 5.0, < 7)
63
+ activerecord (6.1.5)
64
+ activemodel (= 6.1.5)
65
+ activesupport (= 6.1.5)
66
+ activeresource (6.0.0)
67
+ activemodel (>= 6.0)
68
68
  activemodel-serializers-xml (~> 1.0)
69
- activesupport (>= 5.0, < 7)
70
- activestorage (6.1.4.4)
71
- actionpack (= 6.1.4.4)
72
- activejob (= 6.1.4.4)
73
- activerecord (= 6.1.4.4)
74
- activesupport (= 6.1.4.4)
75
- marcel (~> 1.0.0)
69
+ activesupport (>= 6.0)
70
+ activestorage (6.1.5)
71
+ actionpack (= 6.1.5)
72
+ activejob (= 6.1.5)
73
+ activerecord (= 6.1.5)
74
+ activesupport (= 6.1.5)
75
+ marcel (~> 1.0)
76
76
  mini_mime (>= 1.1.0)
77
- activesupport (6.1.4.4)
77
+ activesupport (6.1.5)
78
78
  concurrent-ruby (~> 1.0, >= 1.0.2)
79
79
  i18n (>= 1.6, < 2)
80
80
  minitest (>= 5.1)
@@ -82,121 +82,80 @@ GEM
82
82
  zeitwerk (~> 2.3)
83
83
  addressable (2.8.0)
84
84
  public_suffix (>= 2.0.2, < 5.0)
85
- ast (2.4.1)
86
- binding_of_caller (0.8.0)
85
+ ast (2.4.2)
86
+ binding_of_caller (1.0.0)
87
87
  debug_inspector (>= 0.0.1)
88
- browser_sniffer (1.4.0)
88
+ browser_sniffer (2.0.0)
89
89
  builder (3.2.4)
90
90
  byebug (11.1.3)
91
91
  coderay (1.1.3)
92
- concurrent-ruby (1.1.9)
93
- crack (0.4.4)
92
+ concurrent-ruby (1.1.10)
93
+ crack (0.4.5)
94
+ rexml
94
95
  crass (1.0.6)
95
- debug_inspector (0.0.3)
96
+ debug_inspector (1.1.0)
96
97
  erubi (1.10.0)
97
- faraday (1.9.3)
98
- faraday-em_http (~> 1.0)
99
- faraday-em_synchrony (~> 1.0)
100
- faraday-excon (~> 1.1)
101
- faraday-httpclient (~> 1.0)
102
- faraday-multipart (~> 1.0)
103
- faraday-net_http (~> 1.0)
104
- faraday-net_http_persistent (~> 1.0)
105
- faraday-patron (~> 1.0)
106
- faraday-rack (~> 1.0)
107
- faraday-retry (~> 1.0)
108
- ruby2_keywords (>= 0.0.4)
109
- faraday-em_http (1.0.0)
110
- faraday-em_synchrony (1.0.0)
111
- faraday-excon (1.1.0)
112
- faraday-httpclient (1.0.1)
113
- faraday-multipart (1.0.3)
114
- multipart-post (>= 1.2, < 3)
115
- faraday-net_http (1.0.1)
116
- faraday-net_http_persistent (1.2.0)
117
- faraday-patron (1.0.0)
118
- faraday-rack (1.0.0)
119
- faraday-retry (1.0.3)
120
98
  globalid (1.0.0)
121
99
  activesupport (>= 5.0)
122
- graphql (1.13.8)
123
- graphql-client (0.17.0)
124
- activesupport (>= 3.0)
125
- graphql (~> 1.10)
100
+ hash_diff (1.0.0)
126
101
  hashdiff (1.0.1)
127
- hashie (5.0.0)
128
- i18n (1.9.1)
102
+ httparty (0.20.0)
103
+ mime-types (~> 3.0)
104
+ multi_xml (>= 0.5.2)
105
+ i18n (1.10.0)
129
106
  concurrent-ruby (~> 1.0)
130
- jwt (2.3.0)
131
- loofah (2.13.0)
107
+ jwt (2.4.1)
108
+ loofah (2.15.0)
132
109
  crass (~> 1.0.2)
133
110
  nokogiri (>= 1.5.9)
134
111
  mail (2.7.1)
135
112
  mini_mime (>= 0.1.1)
136
113
  marcel (1.0.2)
137
- method_source (0.9.2)
114
+ method_source (1.0.0)
115
+ mime-types (3.4.1)
116
+ mime-types-data (~> 3.2015)
117
+ mime-types-data (3.2022.0105)
138
118
  mini_mime (1.1.2)
139
- mini_portile2 (2.6.1)
140
- minitest (5.14.4)
141
- mocha (1.11.2)
142
- multi_json (1.15.0)
119
+ mini_portile2 (2.8.0)
120
+ minitest (5.15.0)
121
+ mocha (1.13.0)
143
122
  multi_xml (0.6.0)
144
- multipart-post (2.1.1)
145
123
  nio4r (2.5.8)
146
- nokogiri (1.12.5)
147
- mini_portile2 (~> 2.6.1)
124
+ nokogiri (1.13.4)
125
+ mini_portile2 (~> 2.8.0)
148
126
  racc (~> 1.4)
149
- oauth2 (1.4.7)
150
- faraday (>= 0.8, < 2.0)
151
- jwt (>= 1.0, < 3.0)
152
- multi_json (~> 1.3)
153
- multi_xml (~> 0.5)
154
- rack (>= 1.2, < 3)
155
- omniauth (2.0.4)
156
- hashie (>= 3.4.6)
157
- rack (>= 1.6.2, < 3)
158
- rack-protection
159
- omniauth-oauth2 (1.7.2)
160
- oauth2 (~> 1.4)
161
- omniauth (>= 1.9, < 3)
162
- omniauth-rails_csrf_protection (1.0.0)
163
- actionpack (>= 4.2)
164
- omniauth (~> 2.0)
165
- omniauth-shopify-oauth2 (2.3.2)
166
- activesupport
167
- omniauth-oauth2 (~> 1.5)
168
- parallel (1.20.1)
169
- parser (2.7.2.0)
127
+ oj (3.13.15)
128
+ openssl (3.0.0)
129
+ parallel (1.21.0)
130
+ parser (3.1.0.0)
170
131
  ast (~> 2.4.1)
171
- pry (0.12.2)
172
- coderay (~> 1.1.0)
173
- method_source (~> 0.9.0)
174
- pry-nav (0.3.0)
175
- pry (>= 0.9.10, < 0.13.0)
176
- pry-stack_explorer (0.4.9.3)
177
- binding_of_caller (>= 0.7)
178
- pry (>= 0.9.11)
132
+ pry (0.14.1)
133
+ coderay (~> 1.1)
134
+ method_source (~> 1.0)
135
+ pry-nav (1.0.0)
136
+ pry (>= 0.9.10, < 0.15)
137
+ pry-stack_explorer (0.6.1)
138
+ binding_of_caller (~> 1.0)
139
+ pry (~> 0.13)
179
140
  public_suffix (4.0.6)
180
141
  racc (1.6.0)
181
142
  rack (2.2.3)
182
- rack-protection (2.1.0)
183
- rack
184
143
  rack-test (1.1.0)
185
144
  rack (>= 1.0, < 3)
186
- rails (6.1.4.4)
187
- actioncable (= 6.1.4.4)
188
- actionmailbox (= 6.1.4.4)
189
- actionmailer (= 6.1.4.4)
190
- actionpack (= 6.1.4.4)
191
- actiontext (= 6.1.4.4)
192
- actionview (= 6.1.4.4)
193
- activejob (= 6.1.4.4)
194
- activemodel (= 6.1.4.4)
195
- activerecord (= 6.1.4.4)
196
- activestorage (= 6.1.4.4)
197
- activesupport (= 6.1.4.4)
145
+ rails (6.1.5)
146
+ actioncable (= 6.1.5)
147
+ actionmailbox (= 6.1.5)
148
+ actionmailer (= 6.1.5)
149
+ actionpack (= 6.1.5)
150
+ actiontext (= 6.1.5)
151
+ actionview (= 6.1.5)
152
+ activejob (= 6.1.5)
153
+ activemodel (= 6.1.5)
154
+ activerecord (= 6.1.5)
155
+ activestorage (= 6.1.5)
156
+ activesupport (= 6.1.5)
198
157
  bundler (>= 1.15.0)
199
- railties (= 6.1.4.4)
158
+ railties (= 6.1.5)
200
159
  sprockets-rails (>= 2.0.0)
201
160
  rails-controller-testing (1.0.5)
202
161
  actionpack (>= 5.0.1.rc1)
@@ -207,39 +166,46 @@ GEM
207
166
  nokogiri (>= 1.6)
208
167
  rails-html-sanitizer (1.4.2)
209
168
  loofah (~> 2.3)
210
- railties (6.1.4.4)
211
- actionpack (= 6.1.4.4)
212
- activesupport (= 6.1.4.4)
169
+ railties (6.1.5)
170
+ actionpack (= 6.1.5)
171
+ activesupport (= 6.1.5)
213
172
  method_source
214
- rake (>= 0.13)
173
+ rake (>= 12.2)
215
174
  thor (~> 1.0)
216
- rainbow (3.0.0)
217
- rake (13.0.3)
175
+ rainbow (3.1.1)
176
+ rake (13.0.6)
218
177
  rb-readline (0.5.5)
219
178
  redirect_safely (1.0.0)
220
179
  activemodel
221
- regexp_parser (2.0.0)
180
+ regexp_parser (2.2.0)
222
181
  rexml (3.2.5)
223
- rubocop (1.5.2)
182
+ rubocop (1.25.1)
224
183
  parallel (~> 1.10)
225
- parser (>= 2.7.1.5)
184
+ parser (>= 3.1.0.0)
226
185
  rainbow (>= 2.2.2, < 4.0)
227
186
  regexp_parser (>= 1.8, < 3.0)
228
187
  rexml
229
- rubocop-ast (>= 1.2.0, < 2.0)
188
+ rubocop-ast (>= 1.15.1, < 2.0)
230
189
  ruby-progressbar (~> 1.7)
231
- unicode-display_width (>= 1.4.0, < 2.0)
232
- rubocop-ast (1.3.0)
233
- parser (>= 2.7.1.5)
234
- rubocop-shopify (1.0.7)
235
- rubocop (~> 1.4)
236
- ruby-progressbar (1.10.1)
237
- ruby2_keywords (0.0.5)
238
- shopify_api (9.5.1)
239
- activeresource (>= 4.1.0)
240
- graphql-client
241
- rack
242
- sprockets (4.0.2)
190
+ unicode-display_width (>= 1.4.0, < 3.0)
191
+ rubocop-ast (1.15.1)
192
+ parser (>= 3.0.1.1)
193
+ rubocop-shopify (2.4.0)
194
+ rubocop (~> 1.24)
195
+ ruby-progressbar (1.11.0)
196
+ securerandom (0.2.0)
197
+ shopify_api (11.0.0)
198
+ concurrent-ruby
199
+ hash_diff
200
+ httparty
201
+ jwt
202
+ oj
203
+ openssl
204
+ securerandom
205
+ sorbet-runtime
206
+ zeitwerk (~> 2.5)
207
+ sorbet-runtime (0.5.10139)
208
+ sprockets (4.1.1)
243
209
  concurrent-ruby (~> 1.0)
244
210
  rack (> 1, < 3)
245
211
  sprockets-rails (3.4.2)
@@ -250,15 +216,15 @@ GEM
250
216
  thor (1.2.1)
251
217
  tzinfo (2.0.4)
252
218
  concurrent-ruby (~> 1.0)
253
- unicode-display_width (1.7.0)
254
- webmock (3.9.1)
255
- addressable (>= 2.3.6)
219
+ unicode-display_width (2.1.0)
220
+ webmock (3.14.0)
221
+ addressable (>= 2.8.0)
256
222
  crack (>= 0.3.2)
257
223
  hashdiff (>= 0.4.0, < 2.0.0)
258
224
  websocket-driver (0.7.5)
259
225
  websocket-extensions (>= 0.1.0)
260
226
  websocket-extensions (0.1.5)
261
- zeitwerk (2.5.4)
227
+ zeitwerk (2.6.0)
262
228
 
263
229
  PLATFORMS
264
230
  ruby
@@ -279,4 +245,4 @@ DEPENDENCIES
279
245
  webmock
280
246
 
281
247
  BUNDLED WITH
282
- 2.2.29
248
+ 2.3.5
data/README.md CHANGED
@@ -6,7 +6,6 @@
6
6
 
7
7
  [gem]: https://img.shields.io/gem/v/shopify_app.svg
8
8
  [gem_url]: https://rubygems.org/gems/shopify_app
9
- [supported_rails_version]: https://img.shields.io/badge/rails-%3C6.2.0-orange
10
9
 
11
10
  This gem builds Rails applications that can be embedded in the Shopify Admin.
12
11
 
data/Rakefile CHANGED
@@ -1,7 +1,8 @@
1
1
  # frozen_string_literal: true
2
- require 'bundler/gem_tasks'
3
- require 'rake/testtask'
4
2
 
5
- require File.expand_path('../test/dummy/config/application', __FILE__)
3
+ require "bundler/gem_tasks"
4
+ require "rake/testtask"
5
+
6
+ require File.expand_path("../test/dummy/config/application", __FILE__)
6
7
 
7
8
  Rails.application.load_tasks