shopify_app 13.5.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 (156) hide show
  1. checksums.yaml +7 -0
  2. data/.babelrc +5 -0
  3. data/.github/CODEOWNERS +1 -0
  4. data/.github/ISSUE_TEMPLATE.md +14 -0
  5. data/.github/PULL_REQUEST_TEMPLATE.md +6 -0
  6. data/.github/probots.yml +2 -0
  7. data/.github/workflows/rubocop.yml +28 -0
  8. data/.gitignore +16 -0
  9. data/.nvmrc +1 -0
  10. data/.rubocop.yml +17 -0
  11. data/.ruby-version +1 -0
  12. data/.travis.yml +28 -0
  13. data/CHANGELOG.md +505 -0
  14. data/Gemfile +11 -0
  15. data/LICENSE +19 -0
  16. data/README.md +620 -0
  17. data/Rakefile +7 -0
  18. data/SECURITY.md +59 -0
  19. data/app/assets/images/storage_access.svg +2 -0
  20. data/app/assets/javascripts/shopify_app/enable_cookies.js +3 -0
  21. data/app/assets/javascripts/shopify_app/itp_helper.js +40 -0
  22. data/app/assets/javascripts/shopify_app/partition_cookies.js +8 -0
  23. data/app/assets/javascripts/shopify_app/redirect.js +33 -0
  24. data/app/assets/javascripts/shopify_app/request_storage_access.js +3 -0
  25. data/app/assets/javascripts/shopify_app/storage_access.js +153 -0
  26. data/app/assets/javascripts/shopify_app/storage_access_redirect.js +17 -0
  27. data/app/assets/javascripts/shopify_app/top_level.js +2 -0
  28. data/app/assets/javascripts/shopify_app/top_level_interaction.js +11 -0
  29. data/app/controllers/concerns/shopify_app/authenticated.rb +16 -0
  30. data/app/controllers/concerns/shopify_app/require_known_shop.rb +39 -0
  31. data/app/controllers/shopify_app/authenticated_controller.rb +8 -0
  32. data/app/controllers/shopify_app/callback_controller.rb +140 -0
  33. data/app/controllers/shopify_app/extension_verification_controller.rb +15 -0
  34. data/app/controllers/shopify_app/sessions_controller.rb +184 -0
  35. data/app/controllers/shopify_app/webhooks_controller.rb +37 -0
  36. data/app/views/shopify_app/partials/_button_styles.html.erb +104 -0
  37. data/app/views/shopify_app/partials/_card_styles.html.erb +33 -0
  38. data/app/views/shopify_app/partials/_empty_state_styles.html.erb +129 -0
  39. data/app/views/shopify_app/partials/_layout_styles.html.erb +167 -0
  40. data/app/views/shopify_app/partials/_typography_styles.html.erb +35 -0
  41. data/app/views/shopify_app/sessions/enable_cookies.html.erb +75 -0
  42. data/app/views/shopify_app/sessions/new.html.erb +123 -0
  43. data/app/views/shopify_app/sessions/request_storage_access.html.erb +68 -0
  44. data/app/views/shopify_app/sessions/top_level_interaction.html.erb +64 -0
  45. data/app/views/shopify_app/shared/redirect.html.erb +23 -0
  46. data/config/locales/cs.yml +23 -0
  47. data/config/locales/da.yml +20 -0
  48. data/config/locales/de.yml +22 -0
  49. data/config/locales/en.yml +15 -0
  50. data/config/locales/es.yml +22 -0
  51. data/config/locales/fi.yml +20 -0
  52. data/config/locales/fr.yml +23 -0
  53. data/config/locales/hi.yml +23 -0
  54. data/config/locales/it.yml +21 -0
  55. data/config/locales/ja.yml +17 -0
  56. data/config/locales/ko.yml +19 -0
  57. data/config/locales/ms.yml +22 -0
  58. data/config/locales/nb.yml +21 -0
  59. data/config/locales/nl.yml +21 -0
  60. data/config/locales/pl.yml +21 -0
  61. data/config/locales/pt-BR.yml +21 -0
  62. data/config/locales/pt-PT.yml +22 -0
  63. data/config/locales/sv.yml +21 -0
  64. data/config/locales/th.yml +20 -0
  65. data/config/locales/tr.yml +22 -0
  66. data/config/locales/zh-CN.yml +16 -0
  67. data/config/locales/zh-TW.yml +16 -0
  68. data/config/routes.rb +23 -0
  69. data/docs/Quickstart.md +93 -0
  70. data/docs/Releasing.md +18 -0
  71. data/docs/Troubleshooting.md +16 -0
  72. data/docs/install-on-dev-shop.png +0 -0
  73. data/docs/test-your-app.png +0 -0
  74. data/images/app-proxy-screenshot.png +0 -0
  75. data/karma.conf.js +44 -0
  76. data/lib/generators/shopify_app/add_after_authenticate_job/add_after_authenticate_job_generator.rb +47 -0
  77. data/lib/generators/shopify_app/add_after_authenticate_job/templates/after_authenticate_job.rb +11 -0
  78. data/lib/generators/shopify_app/add_marketing_activity_extension/add_marketing_activity_extension_generator.rb +40 -0
  79. data/lib/generators/shopify_app/add_marketing_activity_extension/templates/marketing_activities_controller.rb +62 -0
  80. data/lib/generators/shopify_app/add_webhook/add_webhook_generator.rb +69 -0
  81. data/lib/generators/shopify_app/add_webhook/templates/webhook_job.rb.tt +13 -0
  82. data/lib/generators/shopify_app/app_proxy_controller/app_proxy_controller_generator.rb +26 -0
  83. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_controller.rb +8 -0
  84. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_route.rb +11 -0
  85. data/lib/generators/shopify_app/app_proxy_controller/templates/index.html.erb +19 -0
  86. data/lib/generators/shopify_app/authenticated_controller/authenticated_controller_generator.rb +15 -0
  87. data/lib/generators/shopify_app/authenticated_controller/templates/authenticated_controller.rb +5 -0
  88. data/lib/generators/shopify_app/controllers/controllers_generator.rb +30 -0
  89. data/lib/generators/shopify_app/home_controller/home_controller_generator.rb +26 -0
  90. data/lib/generators/shopify_app/home_controller/templates/home_controller.rb +8 -0
  91. data/lib/generators/shopify_app/home_controller/templates/index.html.erb +21 -0
  92. data/lib/generators/shopify_app/install/install_generator.rb +83 -0
  93. data/lib/generators/shopify_app/install/templates/_flash_messages.html.erb +3 -0
  94. data/lib/generators/shopify_app/install/templates/embedded_app.html.erb +41 -0
  95. data/lib/generators/shopify_app/install/templates/flash_messages.js +24 -0
  96. data/lib/generators/shopify_app/install/templates/omniauth.rb +3 -0
  97. data/lib/generators/shopify_app/install/templates/session_store.rb +4 -0
  98. data/lib/generators/shopify_app/install/templates/shopify_app.js +15 -0
  99. data/lib/generators/shopify_app/install/templates/shopify_app.rb.tt +15 -0
  100. data/lib/generators/shopify_app/install/templates/shopify_app_index.js +2 -0
  101. data/lib/generators/shopify_app/install/templates/shopify_provider.rb +20 -0
  102. data/lib/generators/shopify_app/install/templates/user_agent.rb +6 -0
  103. data/lib/generators/shopify_app/rotate_shopify_token_job/rotate_shopify_token_job_generator.rb +16 -0
  104. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token.rake +17 -0
  105. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token_job.rb +42 -0
  106. data/lib/generators/shopify_app/routes/routes_generator.rb +32 -0
  107. data/lib/generators/shopify_app/routes/templates/routes.rb +12 -0
  108. data/lib/generators/shopify_app/shop_model/shop_model_generator.rb +43 -0
  109. data/lib/generators/shopify_app/shop_model/templates/db/migrate/create_shops.erb +15 -0
  110. data/lib/generators/shopify_app/shop_model/templates/shop.rb +8 -0
  111. data/lib/generators/shopify_app/shop_model/templates/shops.yml +3 -0
  112. data/lib/generators/shopify_app/shopify_app_generator.rb +18 -0
  113. data/lib/generators/shopify_app/user_model/templates/db/migrate/create_users.erb +16 -0
  114. data/lib/generators/shopify_app/user_model/templates/user.rb +8 -0
  115. data/lib/generators/shopify_app/user_model/templates/users.yml +4 -0
  116. data/lib/generators/shopify_app/user_model/user_model_generator.rb +43 -0
  117. data/lib/generators/shopify_app/views/views_generator.rb +30 -0
  118. data/lib/shopify_app.rb +61 -0
  119. data/lib/shopify_app/configuration.rb +94 -0
  120. data/lib/shopify_app/controller_concerns/app_proxy_verification.rb +38 -0
  121. data/lib/shopify_app/controller_concerns/csrf_protection.rb +15 -0
  122. data/lib/shopify_app/controller_concerns/embedded_app.rb +20 -0
  123. data/lib/shopify_app/controller_concerns/itp.rb +45 -0
  124. data/lib/shopify_app/controller_concerns/localization.rb +23 -0
  125. data/lib/shopify_app/controller_concerns/login_protection.rb +231 -0
  126. data/lib/shopify_app/controller_concerns/payload_verification.rb +24 -0
  127. data/lib/shopify_app/controller_concerns/webhook_verification.rb +23 -0
  128. data/lib/shopify_app/engine.rb +25 -0
  129. data/lib/shopify_app/jobs/scripttags_manager_job.rb +16 -0
  130. data/lib/shopify_app/jobs/webhooks_manager_job.rb +16 -0
  131. data/lib/shopify_app/managers/scripttags_manager.rb +78 -0
  132. data/lib/shopify_app/managers/webhooks_manager.rb +62 -0
  133. data/lib/shopify_app/middleware/jwt_middleware.rb +42 -0
  134. data/lib/shopify_app/middleware/same_site_cookie_middleware.rb +34 -0
  135. data/lib/shopify_app/session/in_memory_session_store.rb +31 -0
  136. data/lib/shopify_app/session/in_memory_shop_session_store.rb +14 -0
  137. data/lib/shopify_app/session/in_memory_user_session_store.rb +14 -0
  138. data/lib/shopify_app/session/jwt.rb +61 -0
  139. data/lib/shopify_app/session/null_user_session_store.rb +22 -0
  140. data/lib/shopify_app/session/session_repository.rb +56 -0
  141. data/lib/shopify_app/session/session_storage.rb +20 -0
  142. data/lib/shopify_app/session/shop_session_storage.rb +42 -0
  143. data/lib/shopify_app/session/user_session_storage.rb +42 -0
  144. data/lib/shopify_app/test_helpers/all.rb +2 -0
  145. data/lib/shopify_app/test_helpers/webhook_verification_helper.rb +17 -0
  146. data/lib/shopify_app/utils.rb +24 -0
  147. data/lib/shopify_app/version.rb +4 -0
  148. data/package-lock.json +7177 -0
  149. data/package.json +28 -0
  150. data/service.yml +7 -0
  151. data/shipit.rubygems.yml +4 -0
  152. data/shopify_app.gemspec +37 -0
  153. data/translation.yml +7 -0
  154. data/webpack.config.js +24 -0
  155. data/yarn.lock +5263 -0
  156. metadata +420 -0
@@ -0,0 +1,64 @@
1
+ <!DOCTYPE html>
2
+ <html lang="<%= I18n.locale %>">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <base target="_top">
7
+ <title>Redirecting…</title>
8
+ <%= render 'shopify_app/partials/layout_styles' %>
9
+ <%= render 'shopify_app/partials/typography_styles' %>
10
+ <%= render 'shopify_app/partials/button_styles' %>
11
+ <%= render 'shopify_app/partials/empty_state_styles' %>
12
+ <style>
13
+ #TopLevelInteractionContent {
14
+ display: none;
15
+ }
16
+ </style>
17
+
18
+ <script>
19
+ window.apiKey = "<%= ShopifyApp.configuration.api_key %>";
20
+ window.shopOrigin = "https://<%= @shop %>";
21
+ window.redirectUrl = "<%= @url %>";
22
+ </script>
23
+
24
+ <%= javascript_include_tag('shopify_app/top_level', crossorigin: 'anonymous', integrity: true) %>
25
+ </head>
26
+ <body>
27
+ <main id="TopLevelInteractionContent">
28
+ <div class="Polaris-Page">
29
+ <div class="Polaris-Page__Content">
30
+ <div class="Polaris-Layout">
31
+ <div class="Polaris-Layout__Section">
32
+ <div class="Polaris-Stack Polaris-Stack--vertical">
33
+ <div class="Polaris-Stack__Item">
34
+ <div class="Polaris-EmptyState">
35
+ <div class="Polaris-EmptyState__Section">
36
+ <div class="Polaris-EmptyState__DetailsContainer">
37
+ <div class="Polaris-EmptyState__Details">
38
+ <div class="Polaris-TextContainer">
39
+ <h1 class="Polaris-DisplayText Polaris-DisplayText--sizeMedium"><%= I18n.t('top_level_interaction_heading', app: ShopifyApp.configuration.application_name) %></h1>
40
+ <div class="Polaris-EmptyState__Content">
41
+ <p><%= I18n.t('top_level_interaction_body', app: ShopifyApp.configuration.application_name) %></p>
42
+ </div>
43
+ </div>
44
+ <div class="Polaris-EmptyState__Actions">
45
+ <div class="Polaris-Stack Polaris-Stack--alignmentCenter">
46
+ <div class="Polaris-Stack__Item"><button type="button" id="TopLevelInteractionButton" class="Polaris-Button Polaris-Button--primary Polaris-Button--sizeLarge"><span class="Polaris-Button__Content"><span class="Polaris-Button__Icon"></span><span><%= I18n.t('top_level_interaction_action') %></span></span></button></div>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ <div class="Polaris-EmptyState__ImageContainer">
52
+ <%= image_tag 'storage_access.svg', role: "presentation", alt: "", class: "Polaris-EmptyState__Image" %>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ </div>
62
+ </main>
63
+ </body>
64
+ </html>
@@ -0,0 +1,23 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <base target="_top">
7
+ <title>Redirecting…</title>
8
+ <%= javascript_include_tag('shopify_app/redirect', crossorigin: 'anonymous', integrity: true) %>
9
+ </head>
10
+ <body>
11
+ <%=
12
+ content_tag(:div, nil,
13
+ id: 'redirection-target',
14
+ data: {
15
+ target: {
16
+ myshopifyUrl: "https://#{current_shopify_domain}",
17
+ url: url,
18
+ },
19
+ },
20
+ )
21
+ %>
22
+ </body>
23
+ </html>
@@ -0,0 +1,23 @@
1
+ ---
2
+ cs:
3
+ logged_out: Odhlášení proběhlo úspěšně
4
+ could_not_log_in: Nelze se přihlásit do obchodu Shopify
5
+ invalid_shop_url: Neplatná doména obchodu
6
+ enable_cookies_heading: Zapnout soubory cookie z aplikace %{app}
7
+ enable_cookies_body: Pokud chcete v Shopify používat aplikaci %{app}, musíte soubory
8
+ cookie v tomto prohlížeči povolit ručně.
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
+ enable_cookies_action: Povolit soubory cookie
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
+ otevře.
16
+ top_level_interaction_action: Pokračovat
17
+ request_storage_access_heading: Aplikace %{app} potřebuje získat přístup k souborům
18
+ cookie
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
+ request_storage_access_footer: Platnost souborů cookie vyprší po 30 dnech.
23
+ request_storage_access_action: Pokračovat
@@ -0,0 +1,20 @@
1
+ ---
2
+ da:
3
+ logged_out: Logget ud
4
+ could_not_log_in: Kunne ikke logge ind på Shopify-butik
5
+ invalid_shop_url: Ugyldig butiksdomæne
6
+ enable_cookies_heading: Aktivér cookies fra %{app}
7
+ enable_cookies_body: Du skal manuelt aktivere cookies i denne browser for at kunne
8
+ bruge %{app} i Shopify.
9
+ enable_cookies_footer: Cookies lader appen godkende dig ved at gemme dine præferencer
10
+ og personlige oplysninger midlertidigt. De udløber efter 30 dage.
11
+ enable_cookies_action: Aktivér cookies
12
+ top_level_interaction_heading: Din browser skal godkende %{app}
13
+ top_level_interaction_body: Din browser kræver, at apps som f.eks. %{app} spørger
14
+ dig om adgang til cookies, inden Shopify kan åbne den for dig.
15
+ top_level_interaction_action: Fortsæt
16
+ request_storage_access_heading: "%{app} skal have adgang til cookies"
17
+ request_storage_access_body: Det lader appen godkende dig ved at gemme dine personlige
18
+ oplysninger midlertidigt. Klik på forsæt, og tillad cookies for at bruge appen.
19
+ request_storage_access_footer: Cookies udløber efter 30 dage.
20
+ request_storage_access_action: Fortsæt
@@ -0,0 +1,22 @@
1
+ ---
2
+ de:
3
+ logged_out: Erfolgreich ausgelogt
4
+ could_not_log_in: Shopify Store Login fehlgeschlagen
5
+ invalid_shop_url: Ungültige Shop-Domain
6
+ enable_cookies_heading: Cookies von %{app} aktivieren
7
+ enable_cookies_body: Sie müssen Cookies in diesem Browser manuell aktivieren, um
8
+ %{app} in Shopify verwenden zu können.
9
+ enable_cookies_footer: Mithilfe von Cookies kann die App Sie authentifizieren, indem
10
+ Ihre Einstellungen und personenbezogenen Daten vorübergehend gespeichert werden.
11
+ Sie laufen nach 30 Tagen ab.
12
+ enable_cookies_action: Cookies aktivieren
13
+ top_level_interaction_heading: Ihr Browser muss %{app} authentifizieren
14
+ top_level_interaction_body: Ihr Browser verlangt, dass Apps wie %{app} Sie um Zugriff
15
+ auf Cookies bitten, bevor Shopify sie für Sie öffnen kann.
16
+ top_level_interaction_action: Weiter
17
+ request_storage_access_heading: "%{app} braucht Zugriff auf Cookies"
18
+ request_storage_access_body: Damit kann die App Sie authentifizieren, indem Ihre
19
+ Einstellungen und personenbezogenen Daten vorübergehend gespeichert werden. Klicken
20
+ Sie auf "Weiter" und erlauben Sie den Cookies, die App zu verwenden.
21
+ request_storage_access_footer: Cookies laufen nach 30 Tagen ab.
22
+ request_storage_access_action: Weiter
@@ -0,0 +1,15 @@
1
+ en:
2
+ logged_out: 'Successfully logged out'
3
+ could_not_log_in: 'Could not log in to Shopify store'
4
+ invalid_shop_url: 'Invalid shop domain'
5
+ enable_cookies_heading: "Enable cookies from %{app}"
6
+ enable_cookies_body: "You must manually enable cookies in this browser in order to use %{app} within Shopify."
7
+ enable_cookies_footer: 'Cookies let the app authenticate you by temporarily storing your preferences and personal information. They expire after 30 days.'
8
+ enable_cookies_action: 'Enable cookies'
9
+ top_level_interaction_heading: "Your browser needs to authenticate %{app}"
10
+ top_level_interaction_body: "Your browser requires apps like %{app} to ask you for access to cookies before Shopify can open it for you."
11
+ top_level_interaction_action: 'Continue'
12
+ request_storage_access_heading: "%{app} needs access to cookies"
13
+ request_storage_access_body: "This lets the app authenticate you by temporarily storing your personal information. Click continue and allow cookies to use the app."
14
+ request_storage_access_footer: 'Cookies expire after 30 days.'
15
+ request_storage_access_action: 'Continue'
@@ -0,0 +1,22 @@
1
+ ---
2
+ es:
3
+ logged_out: Cerrar sesión
4
+ could_not_log_in: No se pudo iniciar sesión en tu tienda Shopify
5
+ invalid_shop_url: Dominio de tienda inválido
6
+ enable_cookies_heading: Habilitar cookies de %{app}
7
+ enable_cookies_body: Debes habilitar manualmente las cookies en este navegador para
8
+ usar %{app} en Shopify.
9
+ enable_cookies_footer: Las cookies permiten que la aplicación te autentique almacenando
10
+ temporalmente tus preferencias y datos personales. Las cookies expiran al cabo
11
+ de 30 días.
12
+ enable_cookies_action: Habilitar cookies
13
+ top_level_interaction_heading: Tu navegador necesita autenticar %{app}
14
+ top_level_interaction_body: Tu navegador requiere aplicaciones como %{app} para
15
+ solicitarte acceso a cookies antes de que Shopify pueda abrirlo por ti.
16
+ top_level_interaction_action: Continuar
17
+ request_storage_access_heading: "%{app} necesita acceso a las cookies"
18
+ request_storage_access_body: Esto permite que la aplicación te autentique almacenando
19
+ temporalmente tus datos personales. Haz clic en continuar y permite que las cookies
20
+ utilicen la aplicación.
21
+ request_storage_access_footer: Las cookies expiran a los 30 días.
22
+ request_storage_access_action: Continuar
@@ -0,0 +1,20 @@
1
+ ---
2
+ fi:
3
+ logged_out: Olet kirjautunut ulos
4
+ could_not_log_in: Kirjautuminen Shopify-kauppaan ei onnistunut
5
+ invalid_shop_url: Virheellinen kaupan verkkotunnus
6
+ enable_cookies_heading: Ota käyttöön sovelluksen %{app} evästeet
7
+ enable_cookies_body: Sinun on otettava evästeet käyttöön manuaalisesti tässä selaimessa,
8
+ jotta voit käyttää sovellusta %{app} Shopifyssa.
9
+ enable_cookies_footer: Evästeiden avulla sovellus voi todentaa sinut tallentamalla
10
+ asetuksesi ja henkilötietosi tilapäisesti. Ne vanhenevat 30 päivän kuluttua.
11
+ enable_cookies_action: Ota evästeet käyttöön
12
+ top_level_interaction_heading: Selaimesi täytyy todentaa %{app}
13
+ top_level_interaction_body: Selaimesi vaatii sovelluksia, kuten %{app}, pyytämään
14
+ sinulta luvan evästeiden käyttöön, ennen kuin Shopify voi avata sovelluksen.
15
+ top_level_interaction_action: Jatka
16
+ request_storage_access_heading: "%{app} edellyttää evästeiden käyttöä"
17
+ request_storage_access_body: Näin sovellus voi todentaa sinut tallentamalla henkilötietosi
18
+ tilapäisesti. Klikkaa Jatka ja salli evästeet sovelluksen käyttämiseksi.
19
+ request_storage_access_footer: Evästeet vanhenevat 30 päivän kuluttua.
20
+ request_storage_access_action: Jatka
@@ -0,0 +1,23 @@
1
+ ---
2
+ fr:
3
+ logged_out: Vous êtes déconnecté(e)
4
+ could_not_log_in: Impossible de se connecter à la boutique Shopify
5
+ invalid_shop_url: Url invalide
6
+ enable_cookies_heading: Activer les cookies de %{app}
7
+ enable_cookies_body: Vous devez manuellement activer les cookies dans ce navigateur
8
+ pour utiliser %{app} dans Shopify.
9
+ enable_cookies_footer: Les cookies permettent à l'application de vous authentifier
10
+ en stockant temporairement vos préférences et informations personnelles. Celles-ci
11
+ expirent après 30 jours.
12
+ enable_cookies_action: Activer les cookies
13
+ top_level_interaction_heading: Votre navigateur doit s'authentifier %{app}
14
+ top_level_interaction_body: Votre navigateur nécessite des applications telles que
15
+ %{app} pour vous demander l'accès aux cookies avant que Shopify ne puisse l'ouvrir
16
+ pour vous.
17
+ top_level_interaction_action: Continuer
18
+ request_storage_access_heading: "%{app} a besoin d'accéder aux cookies"
19
+ request_storage_access_body: Cela permet à l'application de vous authentifier en
20
+ stockant temporairement vos informations personnelles. Cliquez pour continuer
21
+ et autorisez les cookies à utiliser l'application.
22
+ request_storage_access_footer: Les cookies expirent après 30 jours.
23
+ request_storage_access_action: Continuer
@@ -0,0 +1,23 @@
1
+ ---
2
+ hi:
3
+ logged_out: सफलतापूर्वक लॉग आउट कर दिया
4
+ could_not_log_in: Shopify स्टोर में लॉग इन नहीं किया जा सका
5
+ invalid_shop_url: अमान्य शॉप डोमेन
6
+ enable_cookies_heading: "%{app} के कुकीज़ सक्षम करें"
7
+ enable_cookies_body: आपको %{app} का उपयोग Shopify में करने के लिए इस ब्राउज़र में
8
+ कुकीज़ मैन्युअल रूप से सक्षम करने चाहिए.
9
+ enable_cookies_footer: कुकीज़ अस्थायी रूप से आपकी वरीयताएं और व्यक्तिगत जानकारी स्टोर
10
+ कर ऐप को आपको प्रमाणित करने देते हैं. इनकी समय-सीमा 30 दिनों बाद समाप्त हो जाती
11
+ है.
12
+ enable_cookies_action: कुकीज़ को सक्षम करें
13
+ top_level_interaction_heading: आपके ब्राउज़र को %{app} प्रमाणित करने की आवश्यकता
14
+ है
15
+ top_level_interaction_body: आपके ब्राउज़र को %{app} जैसे ऐप की ज़रूरत होती है, जो
16
+ Shopify द्वारा आपके लिए उसे खोलने से पहले कुकीज़ पर पहुंचने करने की अनुमति मांगे.
17
+ top_level_interaction_action: जारी रखें
18
+ request_storage_access_heading: "%{app} को कुकीज़ पर पहुंच करने की आवश्यकता है"
19
+ request_storage_access_body: यह आपकी व्यक्तिगत जानकारी अस्थायी रूप से स्टोर कर ऐप
20
+ को आपको प्रमाणित करने देता है. जारी रखें पर क्लिक करें और कुकीज़ को ऐप उपयोग करने
21
+ की अनुमति दें.
22
+ request_storage_access_footer: कुकीज़ की समय-सीमा 30 दिनों बाद समाप्त हो जाती है.
23
+ request_storage_access_action: जारी रखें
@@ -0,0 +1,21 @@
1
+ ---
2
+ it:
3
+ logged_out: Disconnessione effettuata correttamente
4
+ could_not_log_in: Impossibile accedere al negozio Shopify
5
+ invalid_shop_url: Dominio negozio non valido
6
+ enable_cookies_heading: Abilita i cookie di %{app}
7
+ enable_cookies_body: Devi abilitare manualmente i cookie in questo browser per poter
8
+ utilizzare %{app} da Shopify.
9
+ enable_cookies_footer: I cookie consentono all'app di autenticarti memorizzando
10
+ temporaneamente le tue preferenze e informazioni personali. Scadono dopo 30 giorni.
11
+ enable_cookies_action: Abilita i cookie
12
+ top_level_interaction_heading: Il tuo browser deve autenticare %{app}
13
+ top_level_interaction_body: Il tuo browser richiede che app come %{app} ti chiedano
14
+ l'accesso ai cookie prima dell'apertura automatica da parte di Shopify.
15
+ top_level_interaction_action: Continua
16
+ request_storage_access_heading: "%{app} deve accedere ai cookie"
17
+ request_storage_access_body: L'app potrà così autenticarti memorizzando temporaneamente
18
+ le tue informazioni personali. Clicca su Continua e consenti ai cookie di utilizzare
19
+ l'app.
20
+ request_storage_access_footer: I cookie scadono dopo 30 giorni.
21
+ request_storage_access_action: Continua
@@ -0,0 +1,17 @@
1
+ ---
2
+ ja:
3
+ logged_out: ログインに成功しました
4
+ could_not_log_in: Shopifyストアにログインできませんでした
5
+ invalid_shop_url: ショップのドメインが無効です
6
+ enable_cookies_heading: "%{app}からのCookieを有効にする"
7
+ enable_cookies_body: Shopifyで%{app}を使用できるようにするためには、このブラウザのCookieを手動で有効にする必要があります。
8
+ enable_cookies_footer: Cookieを使用すると、各種設定や個人情報を一時的に保存することで、アプリ認証を受けることができます。30日後に有効期限が切れます。
9
+ enable_cookies_action: Cookieを有効にする
10
+ top_level_interaction_heading: お使いのブラウザを更新する必要があります%{app}
11
+ top_level_interaction_body: Shopifyがアプリを開けるように、ブラウザーはCookieにアクセスするための%{app}のようなアプリが必要です。
12
+ top_level_interaction_action: 続ける
13
+ request_storage_access_heading: "%{app}クッキーにアクセスする必要がある"
14
+ request_storage_access_body: Cookieを使用すると、個人情報を一時的に保存することで、アプリ認証を受けることができます。[続行]
15
+ をクリックして、Cookieでアプリを使用できるようにします。
16
+ request_storage_access_footer: Cookieは30日後に有効期限が切れます。
17
+ request_storage_access_action: 続ける
@@ -0,0 +1,19 @@
1
+ ---
2
+ ko:
3
+ logged_out: 성공적으로 로그아웃 되었습니다.
4
+ could_not_log_in: Shopify 스토어에 로그인할 수 없습니다.
5
+ invalid_shop_url: 유효하지 않은 상점 도메인
6
+ enable_cookies_heading: "%{app}에서 쿠키를 사용 가능"
7
+ enable_cookies_body: Shopify 내에서 %{app} 을 사용하기 위해 이 브라우저에서 쿠키를 수동으로 사용할 수 있습니다.
8
+ enable_cookies_footer: 쿠키를 사용하면 개인의 선호나 정보를 임시로 저장하여 앱에서 사용자를 인증할 수 있습니다. 쿠키는 30일
9
+ 후에 만료됩니다.
10
+ enable_cookies_action: 쿠리 사용 가능
11
+ top_level_interaction_heading: 브라우저에서 %{app} 을 인증해야 합니다.
12
+ top_level_interaction_body: Shopify를 열기 전 쿠키에 엑세스하려면 %{app} 과 같은 앱 들이 브라우저에 설치되어야
13
+ 합니다.
14
+ top_level_interaction_action: 계속
15
+ request_storage_access_heading: "%{app}에서 쿠키에 접근해야 합니다."
16
+ request_storage_access_body: 이를 통해 개인 정보를 임시로 저장하여 앱에서 사용자를 인증할 수 있습니다. 계속 클릭하여
17
+ 쿠키로 앱을 사용하세요.
18
+ request_storage_access_footer: 쿠키는 30일 후에 만료됩니다.
19
+ request_storage_access_action: 계속
@@ -0,0 +1,22 @@
1
+ ---
2
+ ms:
3
+ logged_out: Berjaya log keluar
4
+ could_not_log_in: Tidak dapat log masuk ke kedai Shopify
5
+ invalid_shop_url: Domain kedai tidak sah
6
+ enable_cookies_heading: Dayakan kuki dari %{app}
7
+ enable_cookies_body: Anda mesti mengaktifkan kuki secara manual dalam pelayar ini
8
+ untuk %{app} digunakan dalam Shopify.
9
+ enable_cookies_footer: Kuki membenarkan aplikasi mengesahkan anda dengan menyimpan
10
+ keutamaan dan maklumat peribadi anda buat sementara waktu. Ia tamat tempoh selepas
11
+ 30 hari.
12
+ enable_cookies_action: Dayakan kuki
13
+ top_level_interaction_heading: Pelayar anda perlu mengesahkan %{app}
14
+ top_level_interaction_body: Pelayar anda memerlukan aplikasi seperti %{app} untuk
15
+ meminta anda akses kepada kuki sebelum Shopify boleh membukanya untuk anda.
16
+ top_level_interaction_action: Teruskan
17
+ request_storage_access_heading: "%{app} memerlukan akses kepada kuki"
18
+ request_storage_access_body: Ini membolehkan aplikasi mengesahkan anda dengan menyimpan
19
+ maklumat peribadi anda buat sementara waktu. Klik teruskan dan benarkan kuki untuk
20
+ menggunakan aplikasi.
21
+ request_storage_access_footer: Kuki akan tamat tempoh selepas 30 hari.
22
+ request_storage_access_action: Teruskan
@@ -0,0 +1,21 @@
1
+ ---
2
+ nb:
3
+ logged_out: Logget ut
4
+ could_not_log_in: Kunne ikke logge på Shopify-butikken
5
+ invalid_shop_url: Ugyldig butikkdomene
6
+ enable_cookies_heading: Aktiver informasjonskapsler fra %{app}
7
+ enable_cookies_body: Du kan manuelt aktivere informasjonskapsler i denne nettleseren
8
+ for å kunne bruke %{app} i Shopify.
9
+ enable_cookies_footer: Informasjonskapsler lar appen autentisere deg ved å midlertidig
10
+ lagre innstillingene og personopplysningene dine. De går ut etter 30 dager.
11
+ enable_cookies_action: Aktiver informasjonskapsler
12
+ top_level_interaction_heading: Nettleseren din må autentisere %{app}
13
+ top_level_interaction_body: Nettleseren din krever apper som %{app} for å spørre
14
+ deg om tilgang til informasjonskapsler før Shopify kan åpne den for deg.
15
+ top_level_interaction_action: Fortsett
16
+ request_storage_access_heading: "%{app} må ha tilgang til informasjonskapsler"
17
+ request_storage_access_body: Informasjonskapsler lar appen autentisere deg ved å
18
+ midlertidig lagre personopplysningene dine. Klikk på Fortsett og gi informasjonskapsler
19
+ tillatelse til å bruke appen.
20
+ request_storage_access_footer: Informasjonskapslene går ut etter 30 dager.
21
+ request_storage_access_action: Fortsett
@@ -0,0 +1,21 @@
1
+ ---
2
+ nl:
3
+ logged_out: Je bent afgemeld
4
+ could_not_log_in: Kon niet aanmelden bij Shopify-winkel
5
+ invalid_shop_url: Ongeldig winkeldomein
6
+ enable_cookies_heading: Schakel cookies in van %{app}
7
+ enable_cookies_body: Je moet cookies in deze browser handmatig inschakelen om %{app}
8
+ binnen Shopify te gebruiken.
9
+ enable_cookies_footer: Met cookies kan de app je verifiëren door je voorkeuren en
10
+ persoonlijke informatie tijdelijk op te slaan. Ze vervallen na 30 dagen.
11
+ enable_cookies_action: Schakel cookies in
12
+ top_level_interaction_heading: Je browser moet %{app} verifiëren
13
+ top_level_interaction_body: Je browser heeft apps nodig zoals %{app} om je toegang
14
+ te vragen tot cookies voordat Shopify het voor je kan openen.
15
+ top_level_interaction_action: Doorgaan
16
+ request_storage_access_heading: "%{app} heeft toegang tot cookies nodig"
17
+ request_storage_access_body: Hiermee kan de app je verifiëren door je persoonlijke
18
+ gegevens tijdelijk op te slaan. Klik op Doorgaan en sta cookies toe om de app
19
+ te gebruiken.
20
+ request_storage_access_footer: Cookies verlopen na 30 dagen.
21
+ request_storage_access_action: Doorgaan
@@ -0,0 +1,21 @@
1
+ ---
2
+ pl:
3
+ logged_out: Pomyślne wylogowanie
4
+ could_not_log_in: Nie można zalogować się do sklepu Shopify
5
+ invalid_shop_url: Nieprawidłowa domena sklepu
6
+ enable_cookies_heading: Włącz korzystanie z plików cookie z %{app}
7
+ enable_cookies_body: Aby móc korzystać z %{app} w Shopify, musisz ręcznie włączyć
8
+ korzystanie z plików cookie w tej przeglądarce.
9
+ enable_cookies_footer: Pliki cookie umożliwiają uwierzytelnianie aplikacji przez
10
+ tymczasowe przechowywanie preferencji i danych osobowych. Wygasają one po 30 dniach.
11
+ enable_cookies_action: Włącz korzystanie z plików cookie
12
+ top_level_interaction_heading: Twoja przeglądarka wymaga uwierzytelnienia %{app}
13
+ top_level_interaction_body: Twoja przeglądarka wymaga takich aplikacji jak %{app},
14
+ aby poprosić o dostęp do plików cookie, zanim Shopify będzie mógł ją otworzyć.
15
+ top_level_interaction_action: Kontynuuj
16
+ request_storage_access_heading: "%{app} potrzebuje dostępu do plików cookie"
17
+ request_storage_access_body: Dzięki temu aplikacja może Cię uwierzytelniać, tymczasowo,
18
+ przechowując Twoje dane osobowe. Kliknij przycisk Kontynuuj i zezwalaj na pliki
19
+ cookie, aby korzystać z aplikacji.
20
+ request_storage_access_footer: Pliki cookie wygasają po 30 dniach.
21
+ request_storage_access_action: Kontynuuj
@@ -0,0 +1,21 @@
1
+ ---
2
+ pt-BR:
3
+ logged_out: Você saiu.
4
+ could_not_log_in: Não foi possível fazer login na Shopify store
5
+ invalid_shop_url: Domínio de loja inválido
6
+ enable_cookies_heading: Habilitar cookies de %{app}
7
+ enable_cookies_body: Você precisa 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
12
+ top_level_interaction_heading: Seu navegador precisa autenticar %{app}
13
+ top_level_interaction_body: Seu navegador exige que apps como o %{app} consultem
14
+ você sobre o acesso a cookies antes que a Shopify os abra.
15
+ top_level_interaction_action: Continuar
16
+ request_storage_access_heading: "%{app} precisa acessar cookies"
17
+ request_storage_access_body: Isso permite que o app autentique você armazenando
18
+ temporariamente seus dados pessoais. Clique em continuar e permita os cookies
19
+ para usar o app.
20
+ request_storage_access_footer: Os cookies expiram depois de 30 dias.
21
+ request_storage_access_action: Continuar