shopify_app 11.0.0 → 11.3.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/CHANGELOG.md +32 -0
- data/README.md +35 -21
- data/config/locales/cs.yml +9 -9
- data/config/locales/de.yml +3 -3
- data/config/locales/es.yml +1 -1
- data/config/locales/nl.yml +1 -1
- data/config/locales/pt-BR.yml +7 -8
- data/config/locales/zh-CN.yml +1 -1
- data/docs/Releasing.md +0 -1
- data/karma.conf.js +1 -0
- data/lib/generators/shopify_app/install/install_generator.rb +30 -13
- data/lib/generators/shopify_app/install/templates/embedded_app.html.erb +5 -1
- data/lib/generators/shopify_app/install/templates/shopify_app.rb +5 -2
- data/lib/generators/shopify_app/install/templates/shopify_app_index.js +2 -0
- data/lib/generators/shopify_app/install/templates/user_agent.rb +5 -0
- data/lib/shopify_app.rb +41 -29
- data/lib/shopify_app/configuration.rb +4 -0
- data/lib/shopify_app/utils.rb +7 -0
- data/lib/shopify_app/version.rb +1 -1
- data/package-lock.json +2048 -1707
- data/package.json +7 -8
- data/shopify_app.gemspec +6 -3
- data/yarn.lock +1570 -1249
- metadata +55 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15eca48ef29e1c972ae2444aa0f87d0174a86fe429a5f006fb1dcad801040f89
|
4
|
+
data.tar.gz: f91ad649d3b251111a6b48ec0545e4716a18540e3efbe18c89bd8f36becd5d1c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 16bebc85b8c03bc330c583d43310a33cb0dfa789087cc84a73722ffa02de045113ccdf69a25f1bb975ceae35ad60b6b938b80e57972bf654fc5d4d79299e4fde
|
7
|
+
data.tar.gz: 874b833abb3c157aecebecb62d2ecba4f886af24d476f6c55826cca1eec023f6109ec66b33ab2661c6dfab9a9db3da8b247d80beb39a4e8187066e0bae1c7acc
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,35 @@
|
|
1
|
+
11.3.0
|
2
|
+
-----
|
3
|
+
* Update assets to be compatible with Rails 6 [#808](https://github.com/Shopify/shopify_app/pull/808)
|
4
|
+
|
5
|
+
11.2.1
|
6
|
+
-----
|
7
|
+
* Adds ngrok whitelist in development [#802](https://github.com/Shopify/shopify_app/pull/802)
|
8
|
+
|
9
|
+
11.2.0
|
10
|
+
-----
|
11
|
+
|
12
|
+
* Bump omniauth-shopify-oauth2 gem to v2.2.0
|
13
|
+
|
14
|
+
11.1.0
|
15
|
+
-----
|
16
|
+
|
17
|
+
* Add Webmock and Pry as development dependencies
|
18
|
+
* Update install generator to leverage updates to ShopifyAPI::ApiVersion add in v8.0.0 of the shopify_api gem [#790](https://github.com/Shopify/shopify_app/pull/790)
|
19
|
+
|
20
|
+
|
21
|
+
11.0.2
|
22
|
+
-----
|
23
|
+
|
24
|
+
* Lock shopify_api gem dependency to `~> 7.0` from `>= 7.0.0`.
|
25
|
+
* Remove flakey JS Tests
|
26
|
+
* bump sqlite3 development dependency to `~>1.4` from `~> 1.3.6`. [#789](https://github.com/Shopify/shopify_app/pull/789)
|
27
|
+
|
28
|
+
11.0.1
|
29
|
+
-----
|
30
|
+
|
31
|
+
* Add dotenv-rails gem to install generator, so apps fetch credentials from `.env` by default: [#776](https://github.com/Shopify/shopify_app/pull/776)
|
32
|
+
|
1
33
|
11.0.0
|
2
34
|
-----
|
3
35
|
|
data/README.md
CHANGED
@@ -26,7 +26,6 @@ Table of Contents
|
|
26
26
|
* [App Proxy Controller Generator](#app-proxy-controller-generator)
|
27
27
|
* [Controllers, Routes and Views](#controllers-routes-and-views)
|
28
28
|
* [**Mounting the Engine**](#mounting-the-engine)
|
29
|
-
* [**Managing Api Keys**](#managing-api-keys)
|
30
29
|
* [**WebhooksManager**](#webhooksmanager)
|
31
30
|
* [**ScripttagsManager**](#scripttagsmanager)
|
32
31
|
* [**AfterAuthenticate Job**](#afterauthenticate-job)
|
@@ -104,11 +103,22 @@ Generators
|
|
104
103
|
The default generator will run the `install`, `shop`, and `home_controller` generators. This is the recommended way to start your app.
|
105
104
|
|
106
105
|
```sh
|
107
|
-
$ rails generate shopify_app
|
106
|
+
$ rails generate shopify_app
|
108
107
|
```
|
109
108
|
|
110
109
|
After running the generator, you will need to run `rake db:migrate` to add tables to your database. You can start your app with `bundle exec rails server` and install your app by visiting localhost.
|
111
110
|
|
111
|
+
### API Keys
|
112
|
+
|
113
|
+
The default and install generators have been updated to source Shopify API key and secret from a `.env` file, which you will need to create with the following format:
|
114
|
+
|
115
|
+
```
|
116
|
+
SHOPIFY_API_KEY=your api key
|
117
|
+
SHOPIFY_API_SECRET=your api secret
|
118
|
+
```
|
119
|
+
|
120
|
+
These values can be found on the "App Setup" page in the [Shopify Partners Dashboard][dashboard].
|
121
|
+
|
112
122
|
### Install Generator
|
113
123
|
|
114
124
|
```sh
|
@@ -116,7 +126,7 @@ $ rails generate shopify_app:install
|
|
116
126
|
|
117
127
|
# or optionally with arguments:
|
118
128
|
|
119
|
-
$ rails generate shopify_app:install
|
129
|
+
$ rails generate shopify_app:install
|
120
130
|
```
|
121
131
|
|
122
132
|
Other options include:
|
@@ -244,21 +254,6 @@ The current Shopify user will be stored in the rails session at `session[:shopif
|
|
244
254
|
|
245
255
|
This will change the type of token that Shopify returns and it will only be valid for a short time. Read more about `Online access` [here](https://help.shopify.com/api/getting-started/authentication/oauth). Note that this means you won't be able to use this token to respond to Webhooks.
|
246
256
|
|
247
|
-
Managing Api Keys
|
248
|
-
-----------------
|
249
|
-
|
250
|
-
The `install` generator places your Api credentials directly into the shopify_app initializer which is convenient and fine for development but once your app goes into production **your api credentials should not be in source control**. When we develop apps we keep our keys in environment variables so a production shopify_app initializer would look like this:
|
251
|
-
|
252
|
-
```ruby
|
253
|
-
ShopifyApp.configure do |config|
|
254
|
-
config.application_name = 'Your app name' # Optional
|
255
|
-
config.api_key = ENV['SHOPIFY_CLIENT_API_KEY']
|
256
|
-
config.secret = ENV['SHOPIFY_CLIENT_API_SECRET']
|
257
|
-
config.scope = 'read_customers, write_products'
|
258
|
-
config.embedded_app = true
|
259
|
-
end
|
260
|
-
```
|
261
|
-
|
262
257
|
|
263
258
|
WebhooksManager
|
264
259
|
---------------
|
@@ -439,7 +434,7 @@ class ReviewsController < ApplicationController
|
|
439
434
|
end
|
440
435
|
```
|
441
436
|
|
442
|
-
Create your app proxy url in the [Shopify Partners' Dashboard]
|
437
|
+
Create your app proxy url in the [Shopify Partners' Dashboard][dashboard], making sure to point it to `https://your_app_website.com/app_proxy`.
|
443
438
|

|
444
439
|
|
445
440
|
Troubleshooting
|
@@ -462,6 +457,23 @@ Questions or problems?
|
|
462
457
|
- [Ask questions!](https://ecommerce.shopify.com/c/shopify-apis-and-technology)
|
463
458
|
- [Read the docs!](https://help.shopify.com/api/guides)
|
464
459
|
|
460
|
+
Rails 6 Compatibility
|
461
|
+
---------------------------
|
462
|
+
|
463
|
+
### Disable Webpacker
|
464
|
+
If you are using sprockets in rails 6 or want to generate a shopify_app without webpacker run the install task by running
|
465
|
+
|
466
|
+
```
|
467
|
+
SHOPIFY_APP_DISABLE_WEBPACKER=1 rails generate shopify_app
|
468
|
+
```
|
469
|
+
|
470
|
+
and then in your ShopifyApp configuration block, add
|
471
|
+
|
472
|
+
```
|
473
|
+
ShopifyApp.configure do |config|
|
474
|
+
config.disable_webpacker = true
|
475
|
+
end
|
476
|
+
```
|
465
477
|
|
466
478
|
Upgrading from 8.6 to 9.0.0
|
467
479
|
---------------------------
|
@@ -476,7 +488,7 @@ config.api_version = '2019-04'
|
|
476
488
|
|
477
489
|
### Session storage change
|
478
490
|
|
479
|
-
You will need to add an `api_version` method to you session storage object. The default
|
491
|
+
You will need to add an `api_version` method to you session storage object. The default implementation for this is.
|
480
492
|
```ruby
|
481
493
|
def api_version
|
482
494
|
ShopifyApp.configuration.api_version
|
@@ -485,7 +497,7 @@ end
|
|
485
497
|
|
486
498
|
### Generated file change
|
487
499
|
|
488
|
-
`embedded_app.html.erb` the
|
500
|
+
`embedded_app.html.erb` the usage of `shop_session.url` needs to be changed to `shop_session.domain`
|
489
501
|
```erb
|
490
502
|
<script type="text/javascript">
|
491
503
|
ShopifyApp.init({
|
@@ -515,3 +527,5 @@ is changed to
|
|
515
527
|
### ShopifyAPI changes
|
516
528
|
|
517
529
|
You will need to also follow the ShopifyAPI [upgrade guide](https://github.com/Shopify/shopify_api/blob/master/README.md#-breaking-change-notice-for-version-700-) to ensure your app is ready to work with api versioning.
|
530
|
+
|
531
|
+
[dashboard]:https://partners.shopify.com
|
data/config/locales/cs.yml
CHANGED
@@ -4,20 +4,20 @@ cs:
|
|
4
4
|
could_not_log_in: Nelze se přihlásit do obchodu Shopify
|
5
5
|
invalid_shop_url: Neplatná doména obchodu
|
6
6
|
enable_cookies_heading: Zapnout soubory cookie z aplikace %{app}
|
7
|
-
enable_cookies_body: Pokud
|
7
|
+
enable_cookies_body: Pokud chcete v Shopify používat aplikaci %{app}, musíte soubory
|
8
8
|
cookie v tomto prohlížeči povolit ručně.
|
9
|
-
enable_cookies_footer: Soubory cookie umožňují, aby
|
10
|
-
uchování preferencí a osobních údajů. Jejich platnost vyprší po 30 dnech.
|
9
|
+
enable_cookies_footer: Soubory cookie umožňují, aby vás aplikace ověřila pomocí
|
10
|
+
dočasného uchování preferencí a osobních údajů. Jejich platnost vyprší po 30 dnech.
|
11
11
|
enable_cookies_action: Povolit soubory cookie
|
12
|
-
top_level_interaction_heading:
|
13
|
-
top_level_interaction_body:
|
14
|
-
je %{app}, nejdřív vyžádaly přístup k souborům cookie, než je pro
|
12
|
+
top_level_interaction_heading: Váš prohlížeč potřebuje ověřit aplikaci %{app}
|
13
|
+
top_level_interaction_body: Váš prohlížeč vyžaduje, aby si od vás aplikace, jako
|
14
|
+
je %{app}, nejdřív vyžádaly přístup k souborům cookie, než je pro vás Shopify
|
15
15
|
otevře.
|
16
16
|
top_level_interaction_action: Pokračovat
|
17
17
|
request_storage_access_heading: Aplikace %{app} potřebuje získat přístup k souborům
|
18
18
|
cookie
|
19
|
-
request_storage_access_body: Tato aplikace
|
20
|
-
uchování
|
21
|
-
Pokračovat a
|
19
|
+
request_storage_access_body: Tato aplikace vám umožní ověření prostřednictvím dočasného
|
20
|
+
uchování vašich osobních údajů. Pokud chcete používat tuto aplikaci, klikněte
|
21
|
+
na tlačítko Pokračovat a povolte soubory cookie.
|
22
22
|
request_storage_access_footer: Platnost souborů cookie vyprší po 30 dnech.
|
23
23
|
request_storage_access_action: Pokračovat
|
data/config/locales/de.yml
CHANGED
@@ -7,7 +7,7 @@ de:
|
|
7
7
|
enable_cookies_body: Sie müssen Cookies in diesem Browser manuell aktivieren, um
|
8
8
|
%{app} in Shopify verwenden zu können.
|
9
9
|
enable_cookies_footer: Mithilfe von Cookies kann die App Sie authentifizieren, indem
|
10
|
-
Ihre Einstellungen und
|
10
|
+
Ihre Einstellungen und personenbezogenen Daten vorübergehend gespeichert werden.
|
11
11
|
Sie laufen nach 30 Tagen ab.
|
12
12
|
enable_cookies_action: Cookies aktivieren
|
13
13
|
top_level_interaction_heading: Ihr Browser muss %{app} authentifizieren
|
@@ -16,7 +16,7 @@ de:
|
|
16
16
|
top_level_interaction_action: Weiter
|
17
17
|
request_storage_access_heading: "%{app} braucht Zugriff auf Cookies"
|
18
18
|
request_storage_access_body: Damit kann die App Sie authentifizieren, indem Ihre
|
19
|
-
Einstellungen und
|
20
|
-
|
19
|
+
Einstellungen und personenbezogenen Daten vorübergehend gespeichert werden. Klicken
|
20
|
+
Sie auf "Weiter" und erlauben Sie den Cookies, die App zu verwenden.
|
21
21
|
request_storage_access_footer: Cookies laufen nach 30 Tagen ab.
|
22
22
|
request_storage_access_action: Weiter
|
data/config/locales/es.yml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
es:
|
3
3
|
logged_out: Cerrar sesión
|
4
|
-
could_not_log_in: No se pudo iniciar sesión en tu tienda
|
4
|
+
could_not_log_in: No se pudo iniciar sesión en tu tienda Shopify
|
5
5
|
invalid_shop_url: Dominio de tienda inválido
|
6
6
|
enable_cookies_heading: Habilitar cookies de %{app}
|
7
7
|
enable_cookies_body: Debes habilitar manualmente las cookies en este navegador para
|
data/config/locales/nl.yml
CHANGED
data/config/locales/pt-BR.yml
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
---
|
2
2
|
pt-BR:
|
3
|
-
logged_out: Você saiu
|
3
|
+
logged_out: Você saiu.
|
4
4
|
could_not_log_in: Não foi possível fazer login na Shopify store
|
5
5
|
invalid_shop_url: Domínio de loja inválido
|
6
|
-
enable_cookies_heading:
|
7
|
-
enable_cookies_body: Você deve
|
8
|
-
usar %{app} dentro da Shopify.
|
9
|
-
enable_cookies_footer: Os cookies permitem que o
|
10
|
-
|
11
|
-
|
12
|
-
enable_cookies_action: Ativar cookies
|
6
|
+
enable_cookies_heading: Habilitar cookies de %{app}
|
7
|
+
enable_cookies_body: Você deve habilitar manualmente os cookies neste navegador
|
8
|
+
para usar %{app} dentro da Shopify.
|
9
|
+
enable_cookies_footer: Os cookies permitem que o app o autentique armazenando temporariamente
|
10
|
+
suas preferências e dados pessoais. Eles expiram depois de 30 dias.
|
11
|
+
enable_cookies_action: Habilitar cookies
|
13
12
|
top_level_interaction_heading: Seu navegador precisa autenticar %{app}
|
14
13
|
top_level_interaction_body: Seu navegador exige que apps como o %{app} consultem
|
15
14
|
você sobre o acesso a cookies antes que a Shopify os abra.
|
data/config/locales/zh-CN.yml
CHANGED
data/docs/Releasing.md
CHANGED
@@ -3,7 +3,6 @@ Releasing ShopifyApp
|
|
3
3
|
1. Check the Semantic Versioning page for info on how to version the new release: http://semver.org
|
4
4
|
2. Create a pull request with the following changes:
|
5
5
|
* Update the version of ShopifyApp in lib/shopify_app/version.rb
|
6
|
-
* Update the version in package.json, then run `npm install` to make sure the lock file gets updated
|
7
6
|
* Add a CHANGELOG entry for the new release with the date
|
8
7
|
* Change the title of the PR to something like: "Packaging for release X.Y.Z"
|
9
8
|
3. Merge your pull request
|
data/karma.conf.js
CHANGED
@@ -7,20 +7,18 @@ module ShopifyApp
|
|
7
7
|
source_root File.expand_path('../templates', __FILE__)
|
8
8
|
|
9
9
|
class_option :application_name, type: :array, default: ['My', 'Shopify', 'App']
|
10
|
-
class_option :api_key, type: :string, default: '<api_key>'
|
11
|
-
class_option :secret, type: :string, default: '<secret>'
|
12
|
-
class_option :old_secret, type: :string, default: '<old_secret>'
|
13
10
|
class_option :scope, type: :array, default: ['read_products']
|
14
11
|
class_option :embedded, type: :string, default: 'true'
|
15
|
-
class_option :api_version, type: :string, default:
|
12
|
+
class_option :api_version, type: :string, default: nil
|
13
|
+
|
14
|
+
def add_dotenv_gem
|
15
|
+
gem('dotenv-rails', group: [:test, :development])
|
16
|
+
end
|
16
17
|
|
17
18
|
def create_shopify_app_initializer
|
18
19
|
@application_name = format_array_argument(options['application_name'])
|
19
|
-
@api_key = options['api_key']
|
20
|
-
@secret = options['secret']
|
21
|
-
@old_secret = options['old_secret']
|
22
20
|
@scope = format_array_argument(options['scope'])
|
23
|
-
@api_version = options['api_version']
|
21
|
+
@api_version = options['api_version'] || ShopifyAPI::Meta.admin_versions.find(&:latest_supported).handle
|
24
22
|
|
25
23
|
template 'shopify_app.rb', 'config/initializers/shopify_app.rb'
|
26
24
|
end
|
@@ -42,19 +40,38 @@ module ShopifyApp
|
|
42
40
|
end
|
43
41
|
|
44
42
|
def create_embedded_app_layout
|
45
|
-
|
46
|
-
|
43
|
+
return unless embedded_app?
|
44
|
+
|
45
|
+
copy_file 'embedded_app.html.erb', 'app/views/layouts/embedded_app.html.erb'
|
46
|
+
copy_file '_flash_messages.html.erb', 'app/views/layouts/_flash_messages.html.erb'
|
47
|
+
|
48
|
+
if ShopifyApp.use_webpacker?
|
49
|
+
copy_file('shopify_app.js', 'app/javascript/shopify_app/shopify_app.js')
|
50
|
+
copy_file('flash_messages.js', 'app/javascript/shopify_app/flash_messages.js')
|
51
|
+
copy_file('shopify_app_index.js', 'app/javascript/shopify_app/index.js')
|
52
|
+
append_to_file('app/javascript/packs/application.js', 'require("shopify_app")')
|
53
|
+
else
|
47
54
|
copy_file('shopify_app.js', 'app/assets/javascripts/shopify_app.js')
|
48
|
-
copy_file
|
49
|
-
copy_file('flash_messages.js',
|
50
|
-
'app/assets/javascripts/flash_messages.js')
|
55
|
+
copy_file('flash_messages.js', 'app/assets/javascripts/flash_messages.js')
|
51
56
|
end
|
52
57
|
end
|
53
58
|
|
59
|
+
def create_user_agent_initializer
|
60
|
+
template 'user_agent.rb', 'config/initializers/user_agent.rb'
|
61
|
+
end
|
62
|
+
|
54
63
|
def mount_engine
|
55
64
|
route "mount ShopifyApp::Engine, at: '/'"
|
56
65
|
end
|
57
66
|
|
67
|
+
def insert_hosts_into_development_config
|
68
|
+
inject_into_file(
|
69
|
+
'config/environments/development.rb',
|
70
|
+
" config.hosts << /\\h+.ngrok.io/\n",
|
71
|
+
after: "Rails.application.configure do\n"
|
72
|
+
)
|
73
|
+
end
|
74
|
+
|
58
75
|
private
|
59
76
|
|
60
77
|
def embedded_app?
|
@@ -5,7 +5,11 @@
|
|
5
5
|
<% application_name = ShopifyApp.configuration.application_name %>
|
6
6
|
<title><%= application_name %></title>
|
7
7
|
<%= stylesheet_link_tag 'application' %>
|
8
|
-
|
8
|
+
<% if ShopifyApp.use_webpacker? %>
|
9
|
+
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
|
10
|
+
<% else %>
|
11
|
+
<%= javascript_include_tag 'application', "data-turbolinks-track" => true %>
|
12
|
+
<% end %>
|
9
13
|
<%= csrf_meta_tags %>
|
10
14
|
</head>
|
11
15
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
ShopifyApp.configure do |config|
|
2
2
|
config.application_name = "<%= @application_name %>"
|
3
|
-
config.api_key =
|
4
|
-
config.secret =
|
3
|
+
config.api_key = ENV['SHOPIFY_API_KEY']
|
4
|
+
config.secret = ENV['SHOPIFY_API_SECRET']
|
5
5
|
config.old_secret = "<%= @old_secret %>"
|
6
6
|
config.scope = "<%= @scope %>" # Consult this page for more scope options:
|
7
7
|
# https://help.shopify.com/en/api/getting-started/authentication/oauth/scopes
|
@@ -10,3 +10,6 @@ ShopifyApp.configure do |config|
|
|
10
10
|
config.api_version = "<%= @api_version %>"
|
11
11
|
config.session_repository = ShopifyApp::InMemorySessionStore
|
12
12
|
end
|
13
|
+
|
14
|
+
# ShopifyApp::Utils.fetch_known_api_versions # Uncomment to fetch known api versions from shopify servers on boot
|
15
|
+
# ShopifyAPI::ApiVersion.version_lookup_mode = :raise_on_unknown # Uncomment to raise an error if attempting to use an api version that was not previously known
|
data/lib/shopify_app.rb
CHANGED
@@ -4,32 +4,44 @@ require 'shopify_app/version'
|
|
4
4
|
require 'shopify_api'
|
5
5
|
require 'omniauth-shopify-oauth2'
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
require 'shopify_app/
|
20
|
-
|
21
|
-
|
22
|
-
require 'shopify_app/
|
23
|
-
|
24
|
-
#
|
25
|
-
require 'shopify_app/
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
require 'shopify_app/
|
30
|
-
require 'shopify_app/
|
31
|
-
|
32
|
-
|
33
|
-
require 'shopify_app/
|
34
|
-
|
35
|
-
|
7
|
+
module ShopifyApp
|
8
|
+
def self.rails6?
|
9
|
+
Rails::VERSION::MAJOR >= 6
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.use_webpacker?
|
13
|
+
rails6? &&
|
14
|
+
defined?(Webpacker) == 'constant' &&
|
15
|
+
!configuration.disable_webpacker
|
16
|
+
end
|
17
|
+
|
18
|
+
# config
|
19
|
+
require 'shopify_app/configuration'
|
20
|
+
|
21
|
+
# engine
|
22
|
+
require 'shopify_app/engine'
|
23
|
+
|
24
|
+
# utils
|
25
|
+
require 'shopify_app/utils'
|
26
|
+
|
27
|
+
# controller concerns
|
28
|
+
require 'shopify_app/controller_concerns/localization'
|
29
|
+
require 'shopify_app/controller_concerns/itp'
|
30
|
+
require 'shopify_app/controller_concerns/login_protection'
|
31
|
+
require 'shopify_app/controller_concerns/embedded_app'
|
32
|
+
require 'shopify_app/controller_concerns/webhook_verification'
|
33
|
+
require 'shopify_app/controller_concerns/app_proxy_verification'
|
34
|
+
|
35
|
+
# jobs
|
36
|
+
require 'shopify_app/jobs/webhooks_manager_job'
|
37
|
+
require 'shopify_app/jobs/scripttags_manager_job'
|
38
|
+
|
39
|
+
# managers
|
40
|
+
require 'shopify_app/managers/webhooks_manager'
|
41
|
+
require 'shopify_app/managers/scripttags_manager'
|
42
|
+
|
43
|
+
# session
|
44
|
+
require 'shopify_app/session/session_storage'
|
45
|
+
require 'shopify_app/session/session_repository'
|
46
|
+
require 'shopify_app/session/in_memory_session_store'
|
47
|
+
end
|