disco_app 0.15.2 → 0.18.1

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 (310) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -5
  3. data/app/clients/disco_app/api_client.rb +25 -19
  4. data/app/clients/disco_app/graphql_client.rb +85 -0
  5. data/app/controllers/disco_app/admin/app_settings_controller.rb +2 -0
  6. data/app/controllers/disco_app/admin/application_controller.rb +1 -0
  7. data/app/controllers/disco_app/admin/concerns/app_settings_controller.rb +2 -1
  8. data/app/controllers/disco_app/admin/concerns/authenticated_controller.rb +5 -3
  9. data/app/controllers/disco_app/admin/concerns/plans_controller.rb +3 -2
  10. data/app/controllers/disco_app/admin/concerns/shops_controller.rb +1 -0
  11. data/app/controllers/disco_app/admin/concerns/sources_controller.rb +2 -1
  12. data/app/controllers/disco_app/admin/concerns/subscriptions_controller.rb +3 -2
  13. data/app/controllers/disco_app/admin/plans_controller.rb +2 -0
  14. data/app/controllers/disco_app/admin/resources/shops_controller.rb +2 -0
  15. data/app/controllers/disco_app/admin/shops_controller.rb +2 -0
  16. data/app/controllers/disco_app/admin/sources_controller.rb +2 -0
  17. data/app/controllers/disco_app/admin/subscriptions_controller.rb +2 -0
  18. data/app/controllers/disco_app/charges_controller.rb +6 -7
  19. data/app/controllers/disco_app/concerns/app_proxy_controller.rb +6 -6
  20. data/app/controllers/disco_app/concerns/authenticated_controller.rb +26 -27
  21. data/app/controllers/disco_app/concerns/carrier_request_controller.rb +22 -11
  22. data/app/controllers/disco_app/concerns/user_authenticated_controller.rb +1 -0
  23. data/app/controllers/disco_app/concerns/webhooks_controller.rb +13 -12
  24. data/app/controllers/disco_app/flow/actions_controller.rb +9 -0
  25. data/app/controllers/disco_app/flow/concerns/actions_controller.rb +23 -0
  26. data/app/controllers/disco_app/flow/concerns/trigger_usage_controller.rb +29 -0
  27. data/app/controllers/disco_app/flow/concerns/verifies_flow_payload.rb +39 -0
  28. data/app/controllers/disco_app/flow/trigger_usage_controller.rb +9 -0
  29. data/app/controllers/disco_app/frame_controller.rb +0 -1
  30. data/app/controllers/disco_app/install_controller.rb +3 -6
  31. data/app/controllers/disco_app/subscriptions_controller.rb +12 -4
  32. data/app/controllers/disco_app/user_sessions_controller.rb +1 -0
  33. data/app/controllers/disco_app/webhooks_controller.rb +2 -0
  34. data/app/controllers/sessions_controller.rb +5 -6
  35. data/app/helpers/disco_app/application_helper.rb +7 -7
  36. data/app/jobs/disco_app/app_installed_job.rb +2 -0
  37. data/app/jobs/disco_app/app_uninstalled_job.rb +2 -0
  38. data/app/jobs/disco_app/concerns/app_installed_job.rb +2 -3
  39. data/app/jobs/disco_app/concerns/app_uninstalled_job.rb +2 -1
  40. data/app/jobs/disco_app/concerns/customers_data_request_job.rb +13 -0
  41. data/app/jobs/disco_app/concerns/customers_redact_job.rb +13 -0
  42. data/app/jobs/disco_app/concerns/render_asset_group_job.rb +1 -0
  43. data/app/jobs/disco_app/concerns/shop_redact_job.rb +13 -0
  44. data/app/jobs/disco_app/concerns/shop_update_job.rb +9 -2
  45. data/app/jobs/disco_app/concerns/subscription_changed_job.rb +2 -1
  46. data/app/jobs/disco_app/concerns/synchronise_carrier_service_job.rb +8 -7
  47. data/app/jobs/disco_app/concerns/synchronise_resources_job.rb +1 -0
  48. data/app/jobs/disco_app/concerns/synchronise_users_job.rb +6 -3
  49. data/app/jobs/disco_app/concerns/synchronise_webhooks_job.rb +24 -11
  50. data/app/jobs/disco_app/customers_data_request_job.rb +5 -0
  51. data/app/jobs/disco_app/customers_redact_job.rb +5 -0
  52. data/app/jobs/disco_app/flow/process_action_job.rb +11 -0
  53. data/app/jobs/disco_app/flow/process_trigger_job.rb +11 -0
  54. data/app/jobs/disco_app/render_asset_group_job.rb +2 -0
  55. data/app/jobs/disco_app/shop_job.rb +10 -10
  56. data/app/jobs/disco_app/shop_redact_job.rb +5 -0
  57. data/app/jobs/disco_app/shop_update_job.rb +2 -0
  58. data/app/jobs/disco_app/subscription_changed_job.rb +2 -0
  59. data/app/jobs/disco_app/synchronise_carrier_service_job.rb +2 -0
  60. data/app/jobs/disco_app/synchronise_resources_job.rb +2 -0
  61. data/app/jobs/disco_app/synchronise_users_job.rb +2 -0
  62. data/app/jobs/disco_app/synchronise_webhooks_job.rb +2 -0
  63. data/app/models/application_record.rb +2 -0
  64. data/app/models/disco_app/app_settings.rb +2 -0
  65. data/app/models/disco_app/application_charge.rb +1 -1
  66. data/app/models/disco_app/concerns/app_settings.rb +2 -0
  67. data/app/models/disco_app/concerns/can_be_liquified.rb +29 -14
  68. data/app/models/disco_app/concerns/has_metafields.rb +1 -2
  69. data/app/models/disco_app/concerns/plan.rb +3 -4
  70. data/app/models/disco_app/concerns/plan_code.rb +1 -2
  71. data/app/models/disco_app/concerns/renders_assets.rb +15 -21
  72. data/app/models/disco_app/concerns/shop.rb +20 -14
  73. data/app/models/disco_app/concerns/source.rb +2 -3
  74. data/app/models/disco_app/concerns/subscription.rb +3 -3
  75. data/app/models/disco_app/concerns/synchronises.rb +10 -15
  76. data/app/models/disco_app/concerns/taggable.rb +1 -0
  77. data/app/models/disco_app/concerns/user.rb +3 -2
  78. data/app/models/disco_app/flow/action.rb +9 -0
  79. data/app/models/disco_app/flow/concerns/action.rb +27 -0
  80. data/app/models/disco_app/flow/concerns/trigger.rb +28 -0
  81. data/app/models/disco_app/flow/concerns/trigger_usage.rb +17 -0
  82. data/app/models/disco_app/flow/trigger.rb +9 -0
  83. data/app/models/disco_app/flow/trigger_usage.rb +9 -0
  84. data/app/models/disco_app/plan.rb +2 -0
  85. data/app/models/disco_app/plan_code.rb +2 -0
  86. data/app/models/disco_app/session_storage.rb +5 -2
  87. data/app/models/disco_app/shop.rb +2 -0
  88. data/app/models/disco_app/source.rb +2 -0
  89. data/app/models/disco_app/subscription.rb +2 -0
  90. data/app/models/disco_app/user.rb +2 -0
  91. data/app/resources/disco_app/admin/resources/concerns/shop_resource.rb +12 -15
  92. data/app/resources/disco_app/admin/resources/shop_resource.rb +1 -0
  93. data/app/services/disco_app/carrier_request_service.rb +3 -3
  94. data/app/services/disco_app/charges_service.rb +26 -34
  95. data/app/services/disco_app/flow/create_action.rb +35 -0
  96. data/app/services/disco_app/flow/create_trigger.rb +34 -0
  97. data/app/services/disco_app/flow/process_action.rb +50 -0
  98. data/app/services/disco_app/flow/process_trigger.rb +72 -0
  99. data/app/services/disco_app/flow/update_trigger_usage.rb +42 -0
  100. data/app/services/disco_app/partner_app_service.rb +1 -1
  101. data/app/services/disco_app/proxy_service.rb +2 -2
  102. data/app/services/disco_app/request_validation_service.rb +2 -2
  103. data/app/services/disco_app/subscription_service.rb +60 -32
  104. data/app/services/disco_app/webhook_service.rb +9 -11
  105. data/app/views/layouts/admin.html.erb +1 -2
  106. data/app/views/layouts/application.html.erb +1 -2
  107. data/app/views/layouts/embedded_app.html.erb +2 -4
  108. data/app/views/layouts/embedded_app_modal.html.erb +2 -3
  109. data/app/views/shopify_app/sessions/new.html.erb +2 -4
  110. data/config/routes.rb +11 -3
  111. data/db/migrate/20150525000000_create_shops_if_not_existent.rb +80 -80
  112. data/db/migrate/20170315062548_create_disco_app_sources.rb +2 -0
  113. data/db/migrate/20170315062629_add_sources_to_shop_subscriptions.rb +3 -1
  114. data/db/migrate/20170327214540_create_disco_app_users.rb +2 -1
  115. data/db/migrate/20170606160751_fix_disco_app_users_index.rb +2 -0
  116. data/db/migrate/20181229100327_create_flow_actions_and_triggers.rb +32 -0
  117. data/db/migrate/20200405000000_create_flow_trigger_usages.rb +16 -0
  118. data/lib/disco_app/configuration.rb +12 -5
  119. data/lib/disco_app/constants.rb +4 -2
  120. data/lib/disco_app/engine.rb +1 -1
  121. data/lib/disco_app/session.rb +1 -0
  122. data/lib/disco_app/support/file_fixtures.rb +2 -1
  123. data/lib/disco_app/version.rb +3 -1
  124. data/lib/generators/disco_app/install/USAGE +5 -0
  125. data/lib/generators/disco_app/install/install_generator.rb +297 -0
  126. data/lib/generators/disco_app/{templates → install/templates}/assets/javascripts/application.js +0 -0
  127. data/lib/generators/disco_app/{templates → install/templates}/assets/javascripts/components.js +0 -0
  128. data/lib/generators/disco_app/{templates → install/templates}/assets/stylesheets/application.scss +0 -0
  129. data/lib/generators/disco_app/install/templates/config/appsignal.yml +12 -0
  130. data/lib/generators/disco_app/install/templates/config/cable.yml.tt +11 -0
  131. data/lib/generators/disco_app/{templates → install/templates}/config/database.yml.tt +6 -3
  132. data/lib/generators/disco_app/install/templates/config/environments/staging.rb +108 -0
  133. data/lib/generators/disco_app/{templates → install/templates}/config/puma.rb +0 -0
  134. data/lib/generators/disco_app/{templates → install/templates}/controllers/home_controller.rb +1 -0
  135. data/lib/generators/disco_app/{templates → install/templates}/initializers/disco_app.rb +5 -0
  136. data/lib/generators/disco_app/install/templates/initializers/session_store.rb +2 -0
  137. data/lib/generators/disco_app/install/templates/initializers/shopify_app.rb +11 -0
  138. data/lib/generators/disco_app/{templates → install/templates}/initializers/shopify_session_repository.rb +0 -0
  139. data/lib/generators/disco_app/install/templates/initializers/timber.rb +4 -0
  140. data/lib/generators/disco_app/{templates → install/templates}/root/.editorconfig +0 -0
  141. data/lib/generators/disco_app/{templates → install/templates}/root/.env +7 -0
  142. data/lib/generators/disco_app/{templates → install/templates}/root/.env.local +4 -0
  143. data/lib/generators/disco_app/{templates → install/templates}/root/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  144. data/lib/generators/disco_app/{templates → install/templates}/root/.gitignore +6 -0
  145. data/lib/generators/disco_app/install/templates/root/.rspec +1 -0
  146. data/lib/generators/disco_app/{templates → install/templates}/root/.rubocop.yml +315 -217
  147. data/lib/generators/disco_app/install/templates/root/.tool-versions +2 -0
  148. data/lib/generators/disco_app/{templates → install/templates}/root/CHECKS +0 -0
  149. data/lib/generators/disco_app/{templates → install/templates}/root/Procfile +0 -0
  150. data/lib/generators/disco_app/{templates → install/templates}/root/README.md +0 -0
  151. data/lib/generators/disco_app/install/templates/root/package.json.tt +17 -0
  152. data/lib/generators/disco_app/install/templates/spec/rails_helper.rb +40 -0
  153. data/lib/generators/disco_app/install/templates/spec/spec_helper.rb +24 -0
  154. data/lib/generators/disco_app/install/templates/spec/support/active_job.rb +13 -0
  155. data/lib/generators/disco_app/install/templates/spec/support/coveralls.rb +3 -0
  156. data/lib/generators/disco_app/install/templates/spec/support/database_cleaner.rb +17 -0
  157. data/lib/generators/disco_app/install/templates/spec/support/factory_bot.rb +3 -0
  158. data/lib/generators/disco_app/install/templates/spec/support/helpers/json_helper.rb +13 -0
  159. data/lib/generators/disco_app/install/templates/spec/support/shared_examples/a_synchronise_job.rb +12 -0
  160. data/lib/generators/disco_app/install/templates/spec/support/shoulda.rb +6 -0
  161. data/lib/generators/disco_app/install/templates/spec/support/vcr.rb +14 -0
  162. data/lib/generators/disco_app/install/templates/spec/support/webmock.rb +8 -0
  163. data/lib/generators/disco_app/{templates → install/templates}/views/home/index.html.erb +0 -0
  164. data/lib/generators/disco_app/react/USAGE +5 -0
  165. data/lib/generators/disco_app/react/react_generator.rb +108 -0
  166. data/lib/generators/disco_app/react/templates/app/controllers/embedded/api/base_controller.rb +18 -0
  167. data/lib/generators/disco_app/react/templates/app/controllers/embedded/api/home_controller.rb +10 -0
  168. data/lib/generators/disco_app/react/templates/app/controllers/embedded/api/shops_controller.rb +11 -0
  169. data/lib/generators/disco_app/react/templates/app/controllers/embedded/api/users_controller.rb +11 -0
  170. data/lib/generators/disco_app/react/templates/app/controllers/embedded/home_controller.rb +13 -0
  171. data/lib/generators/disco_app/react/templates/app/models/api_response.rb +107 -0
  172. data/lib/generators/disco_app/react/templates/app/serializers/disco_app/shop_serializer.rb +13 -0
  173. data/lib/generators/disco_app/react/templates/app/serializers/disco_app/user_serializer.rb +13 -0
  174. data/lib/generators/disco_app/react/templates/app/serializers/empty_serializer.rb +5 -0
  175. data/lib/generators/disco_app/react/templates/app/serializers/error_serializer.rb +76 -0
  176. data/lib/generators/disco_app/react/templates/app/views/embedded/home/index.html.erb +12 -0
  177. data/lib/generators/disco_app/react/templates/app/views/layouts/embedded.html.erb +10 -0
  178. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/App.jsx +77 -0
  179. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/HomePage.jsx +34 -0
  180. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/EmbeddedPage.jsx +70 -0
  181. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/ErrorBanner.jsx +58 -0
  182. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/PaginationWrapper.jsx +10 -0
  183. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/ScrollToTop.jsx +23 -0
  184. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/withApi.jsx +125 -0
  185. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/index.jsx +39 -0
  186. data/lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/utils.js +19 -0
  187. data/lib/generators/disco_app/react/templates/app/webpack/packs/embedded.js +2 -0
  188. data/lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/banners.scss +7 -0
  189. data/lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/busy.scss +3 -0
  190. data/lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/index.scss +3 -0
  191. data/lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/pagination.scss +5 -0
  192. data/lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded.scss +2 -0
  193. data/lib/generators/disco_app/react/templates/config/initializers/mime_types.rb +13 -0
  194. data/lib/generators/disco_app/react/templates/config/initializers/omniauth.rb +27 -0
  195. data/lib/generators/disco_app/react/templates/config/initializers/version.rb.tt +7 -0
  196. data/lib/generators/disco_app/react/templates/config/webpack/staging.js +5 -0
  197. data/lib/generators/disco_app/react/templates/config/webpack/test.js +5 -0
  198. data/lib/generators/disco_app/react/templates/config/webpacker.yml +96 -0
  199. data/lib/generators/disco_app/react/templates/root/.eslintignore +5 -0
  200. data/lib/generators/disco_app/react/templates/root/.eslintrc +69 -0
  201. data/lib/generators/disco_app/react/templates/root/.prettierrc +3 -0
  202. data/lib/generators/disco_app/react/templates/root/VERSION +1 -0
  203. data/lib/generators/disco_app/react/templates/root/babel.config.js +72 -0
  204. data/lib/generators/disco_app/react/templates/root/package.json.tt +84 -0
  205. data/lib/generators/disco_app/react/templates/root/postcss.config.js +14 -0
  206. data/lib/tasks/api.rake +0 -2
  207. data/lib/tasks/carrier_service.rake +0 -2
  208. data/lib/tasks/database.rake +1 -1
  209. data/lib/tasks/sessions.rake +0 -2
  210. data/lib/tasks/shops.rake +0 -2
  211. data/lib/tasks/users.rake +0 -2
  212. data/lib/tasks/webhooks.rake +0 -2
  213. data/test/clients/disco_app/api_client_test.rb +3 -3
  214. data/test/controllers/disco_app/admin/shops_controller_test.rb +1 -0
  215. data/test/controllers/disco_app/charges_controller_test.rb +8 -9
  216. data/test/controllers/disco_app/flow/trigger_usage_controller_test.rb +41 -0
  217. data/test/controllers/disco_app/install_controller_test.rb +2 -1
  218. data/test/controllers/disco_app/subscriptions_controller_test.rb +2 -1
  219. data/test/controllers/disco_app/webhooks_controller_test.rb +1 -0
  220. data/test/controllers/home_controller_test.rb +1 -1
  221. data/test/disco_app_test.rb +3 -1
  222. data/test/dummy/Rakefile +1 -1
  223. data/test/dummy/app/assets/config/manifest.js +2 -0
  224. data/test/dummy/app/controllers/application_controller.rb +2 -0
  225. data/test/dummy/app/controllers/carrier_request_controller.rb +1 -0
  226. data/test/dummy/app/controllers/disco_app/admin/shops_controller.rb +1 -0
  227. data/test/dummy/app/controllers/home_controller.rb +1 -0
  228. data/test/dummy/app/controllers/proxy_controller.rb +1 -0
  229. data/test/dummy/app/javascript/packs/application.js +18 -0
  230. data/test/dummy/app/jobs/disco_app/app_installed_job.rb +2 -3
  231. data/test/dummy/app/jobs/disco_app/app_uninstalled_job.rb +1 -0
  232. data/test/dummy/app/models/application_record.rb +2 -0
  233. data/test/dummy/app/models/cart.rb +4 -3
  234. data/test/dummy/app/models/disco_app/shop.rb +4 -5
  235. data/test/dummy/app/models/js_configuration.rb +1 -0
  236. data/test/dummy/app/models/product.rb +3 -2
  237. data/test/dummy/app/models/widget_configuration.rb +1 -0
  238. data/test/dummy/babel.config.js +72 -0
  239. data/test/dummy/bin/bundle +1 -1
  240. data/test/dummy/bin/rails +1 -1
  241. data/test/dummy/bin/setup +8 -8
  242. data/test/dummy/bin/webpack +19 -0
  243. data/test/dummy/bin/webpack-dev-server +19 -0
  244. data/test/dummy/config/application.rb +4 -3
  245. data/test/dummy/config/boot.rb +2 -2
  246. data/test/dummy/config/database.yml +3 -0
  247. data/test/dummy/config/environment.rb +1 -1
  248. data/test/dummy/config/environments/staging.rb +85 -0
  249. data/test/dummy/config/initializers/disco_app.rb +8 -1
  250. data/test/dummy/config/initializers/omniauth.rb +3 -4
  251. data/test/dummy/config/initializers/session_store.rb +1 -1
  252. data/test/dummy/config/initializers/shopify_app.rb +1 -0
  253. data/test/dummy/config/routes.rb +0 -2
  254. data/test/dummy/config/secrets.yml +3 -0
  255. data/test/dummy/config/webpack/development.js +5 -0
  256. data/test/dummy/config/webpack/environment.js +3 -0
  257. data/test/dummy/config/webpack/production.js +5 -0
  258. data/test/dummy/config/webpack/test.js +5 -0
  259. data/test/dummy/config/webpacker.yml +95 -0
  260. data/test/dummy/db/migrate/20160307182229_create_products.rb +3 -1
  261. data/test/dummy/db/migrate/20160530160739_create_asset_models.rb +3 -1
  262. data/test/dummy/db/migrate/20161105054746_create_carts.rb +2 -1
  263. data/test/dummy/db/schema.rb +45 -6
  264. data/test/dummy/package.json +8 -0
  265. data/test/dummy/postcss.config.js +12 -0
  266. data/test/dummy/yarn.lock +7244 -0
  267. data/test/fixtures/api/subscriptions/valid_request.json +1 -1
  268. data/test/fixtures/api/widget_store/empty_webhooks.json +3 -0
  269. data/test/fixtures/api/widget_store/existing_webhooks.json +43 -0
  270. data/test/fixtures/disco_app/shops.yml +3 -0
  271. data/test/fixtures/webhooks/flow/trigger_usage.json +7 -0
  272. data/test/integration/synchronises_test.rb +2 -1
  273. data/test/jobs/disco_app/app_installed_job_test.rb +28 -9
  274. data/test/jobs/disco_app/app_uninstalled_job_test.rb +5 -2
  275. data/test/jobs/disco_app/send_subscription_job_test.rb +3 -2
  276. data/test/jobs/disco_app/synchronise_carrier_service_job_test.rb +1 -0
  277. data/test/jobs/disco_app/synchronise_users_job_test.rb +1 -0
  278. data/test/jobs/disco_app/synchronise_webhooks_job_test.rb +70 -13
  279. data/test/models/disco_app/can_be_liquified_test.rb +3 -1
  280. data/test/models/disco_app/has_metafields_test.rb +37 -18
  281. data/test/models/disco_app/renders_assets_test.rb +2 -1
  282. data/test/models/disco_app/session_test.rb +2 -2
  283. data/test/models/disco_app/shop_test.rb +1 -1
  284. data/test/services/disco_app/charges_service_test.rb +7 -8
  285. data/test/services/disco_app/flow/create_action_test.rb +51 -0
  286. data/test/services/disco_app/flow/create_trigger_test.rb +56 -0
  287. data/test/services/disco_app/flow/process_action_test.rb +68 -0
  288. data/test/services/disco_app/flow/process_trigger_test.rb +94 -0
  289. data/test/services/disco_app/flow/update_trigger_usage_test.rb +87 -0
  290. data/test/services/disco_app/subscription_service_test.rb +3 -2
  291. data/test/support/test_file_fixtures.rb +2 -2
  292. data/test/support/test_shopify_api.rb +1 -1
  293. data/test/test_helper.rb +10 -7
  294. data/test/vcr/flow_trigger_invalid_title.yml +35 -0
  295. data/test/vcr/flow_trigger_valid.yml +38 -0
  296. data/test/vcr/webhook_failure.yml +13 -13
  297. metadata +282 -148
  298. data/app/clients/disco_app/disco_api_error.rb +0 -2
  299. data/app/clients/disco_app/rollbar_client.rb +0 -53
  300. data/app/clients/disco_app/rollbar_client_error.rb +0 -2
  301. data/lib/generators/disco_app/USAGE +0 -5
  302. data/lib/generators/disco_app/disco_app_generator.rb +0 -236
  303. data/lib/generators/disco_app/templates/config/newrelic.yml +0 -26
  304. data/lib/generators/disco_app/templates/initializers/rollbar.rb +0 -23
  305. data/lib/generators/disco_app/templates/initializers/session_store.rb +0 -2
  306. data/lib/generators/disco_app/templates/initializers/shopify_app.rb +0 -6
  307. data/lib/generators/disco_app/templates/root/.codeclimate.yml +0 -7
  308. data/lib/generators/disco_app/templates/root/.ruby-version +0 -1
  309. data/lib/tasks/rollbar.rake +0 -24
  310. data/test/fixtures/api/widget_store/webhooks.json +0 -1
metadata CHANGED
@@ -1,483 +1,491 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: disco_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.2
4
+ version: 0.18.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gavin Ballard
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-09 00:00:00.000000000 Z
11
+ date: 2021-10-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rails
14
+ name: active_link_to
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 5.1.0
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 5.1.0
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: sass-rails
28
+ name: active_utils
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '5.0'
33
+ version: '3.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '5.0'
40
+ version: '3.2'
41
41
  - !ruby/object:Gem::Dependency
42
- name: uglifier
42
+ name: activemodel-serializers-xml
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.2'
47
+ version: '1.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.2'
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: coffee-rails
56
+ name: activerecord-session_store
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '4.2'
61
+ version: '1.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '4.2'
68
+ version: '1.0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: jquery-rails
70
+ name: acts_as_singleton
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '4.3'
75
+ version: 0.0.8
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '4.3'
82
+ version: 0.0.8
83
83
  - !ruby/object:Gem::Dependency
84
- name: turbolinks
84
+ name: appsignal
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '5.0'
89
+ version: '2.9'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '5.0'
96
+ version: '2.9'
97
97
  - !ruby/object:Gem::Dependency
98
- name: shopify_app
98
+ name: classnames-rails
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '7.2'
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- version: 7.2.3
103
+ version: '2.1'
107
104
  type: :runtime
108
105
  prerelease: false
109
106
  version_requirements: !ruby/object:Gem::Requirement
110
107
  requirements:
111
108
  - - "~>"
112
109
  - !ruby/object:Gem::Version
113
- version: '7.2'
114
- - - ">="
115
- - !ruby/object:Gem::Version
116
- version: 7.2.3
110
+ version: '2.1'
117
111
  - !ruby/object:Gem::Dependency
118
- name: puma
112
+ name: coffee-rails
119
113
  requirement: !ruby/object:Gem::Requirement
120
114
  requirements:
121
115
  - - "~>"
122
116
  - !ruby/object:Gem::Version
123
- version: '3.9'
117
+ version: '4.2'
124
118
  type: :runtime
125
119
  prerelease: false
126
120
  version_requirements: !ruby/object:Gem::Requirement
127
121
  requirements:
128
122
  - - "~>"
129
123
  - !ruby/object:Gem::Version
130
- version: '3.9'
124
+ version: '4.2'
131
125
  - !ruby/object:Gem::Dependency
132
- name: sidekiq
126
+ name: interactor
133
127
  requirement: !ruby/object:Gem::Requirement
134
128
  requirements:
135
- - - "~>"
129
+ - - ">="
136
130
  - !ruby/object:Gem::Version
137
- version: '5.0'
131
+ version: '0'
138
132
  type: :runtime
139
133
  prerelease: false
140
134
  version_requirements: !ruby/object:Gem::Requirement
141
135
  requirements:
142
- - - "~>"
136
+ - - ">="
143
137
  - !ruby/object:Gem::Version
144
- version: '5.0'
138
+ version: '0'
145
139
  - !ruby/object:Gem::Dependency
146
- name: pg
140
+ name: jquery-rails
147
141
  requirement: !ruby/object:Gem::Requirement
148
142
  requirements:
149
143
  - - "~>"
150
144
  - !ruby/object:Gem::Version
151
- version: 0.21.0
145
+ version: '4.3'
152
146
  type: :runtime
153
147
  prerelease: false
154
148
  version_requirements: !ruby/object:Gem::Requirement
155
149
  requirements:
156
150
  - - "~>"
157
151
  - !ruby/object:Gem::Version
158
- version: 0.21.0
152
+ version: '4.3'
159
153
  - !ruby/object:Gem::Dependency
160
- name: rails_12factor
154
+ name: jsonapi-resources
161
155
  requirement: !ruby/object:Gem::Requirement
162
156
  requirements:
163
157
  - - "~>"
164
158
  - !ruby/object:Gem::Version
165
- version: 0.0.3
159
+ version: '0.9'
166
160
  type: :runtime
167
161
  prerelease: false
168
162
  version_requirements: !ruby/object:Gem::Requirement
169
163
  requirements:
170
164
  - - "~>"
171
165
  - !ruby/object:Gem::Version
172
- version: 0.0.3
166
+ version: '0.9'
173
167
  - !ruby/object:Gem::Dependency
174
- name: active_utils
168
+ name: mailgun_rails
175
169
  requirement: !ruby/object:Gem::Requirement
176
170
  requirements:
177
171
  - - "~>"
178
172
  - !ruby/object:Gem::Version
179
- version: '3.2'
173
+ version: '0.8'
180
174
  type: :runtime
181
175
  prerelease: false
182
176
  version_requirements: !ruby/object:Gem::Requirement
183
177
  requirements:
184
178
  - - "~>"
185
179
  - !ruby/object:Gem::Version
186
- version: '3.2'
180
+ version: '0.8'
187
181
  - !ruby/object:Gem::Dependency
188
- name: activerecord-session_store
182
+ name: nokogiri
189
183
  requirement: !ruby/object:Gem::Requirement
190
184
  requirements:
191
185
  - - "~>"
192
186
  - !ruby/object:Gem::Version
193
- version: '1.0'
187
+ version: '1.7'
194
188
  type: :runtime
195
189
  prerelease: false
196
190
  version_requirements: !ruby/object:Gem::Requirement
197
191
  requirements:
198
192
  - - "~>"
199
193
  - !ruby/object:Gem::Version
200
- version: '1.0'
194
+ version: '1.7'
201
195
  - !ruby/object:Gem::Dependency
202
- name: jsonapi-resources
196
+ name: pg
203
197
  requirement: !ruby/object:Gem::Requirement
204
198
  requirements:
205
199
  - - "~>"
206
200
  - !ruby/object:Gem::Version
207
- version: '0.8'
201
+ version: 0.21.0
208
202
  type: :runtime
209
203
  prerelease: false
210
204
  version_requirements: !ruby/object:Gem::Requirement
211
205
  requirements:
212
206
  - - "~>"
213
207
  - !ruby/object:Gem::Version
214
- version: '0.8'
208
+ version: 0.21.0
215
209
  - !ruby/object:Gem::Dependency
216
- name: acts_as_singleton
210
+ name: premailer-rails
217
211
  requirement: !ruby/object:Gem::Requirement
218
212
  requirements:
219
213
  - - "~>"
220
214
  - !ruby/object:Gem::Version
221
- version: 0.0.8
215
+ version: '1.8'
222
216
  type: :runtime
223
217
  prerelease: false
224
218
  version_requirements: !ruby/object:Gem::Requirement
225
219
  requirements:
226
220
  - - "~>"
227
221
  - !ruby/object:Gem::Version
228
- version: 0.0.8
222
+ version: '1.8'
229
223
  - !ruby/object:Gem::Dependency
230
- name: react-rails
224
+ name: puma
231
225
  requirement: !ruby/object:Gem::Requirement
232
226
  requirements:
233
- - - "~>"
227
+ - - ">="
234
228
  - !ruby/object:Gem::Version
235
- version: '1.10'
229
+ version: '3.9'
236
230
  type: :runtime
237
231
  prerelease: false
238
232
  version_requirements: !ruby/object:Gem::Requirement
239
233
  requirements:
240
- - - "~>"
234
+ - - ">="
241
235
  - !ruby/object:Gem::Version
242
- version: '1.10'
236
+ version: '3.9'
243
237
  - !ruby/object:Gem::Dependency
244
- name: classnames-rails
238
+ name: rails
245
239
  requirement: !ruby/object:Gem::Requirement
246
240
  requirements:
247
241
  - - "~>"
248
242
  - !ruby/object:Gem::Version
249
- version: '2.1'
243
+ version: '6.0'
250
244
  type: :runtime
251
245
  prerelease: false
252
246
  version_requirements: !ruby/object:Gem::Requirement
253
247
  requirements:
254
248
  - - "~>"
255
249
  - !ruby/object:Gem::Version
256
- version: '2.1'
250
+ version: '6.0'
257
251
  - !ruby/object:Gem::Dependency
258
- name: render_anywhere
252
+ name: rails_12factor
259
253
  requirement: !ruby/object:Gem::Requirement
260
254
  requirements:
261
255
  - - "~>"
262
256
  - !ruby/object:Gem::Version
263
- version: 0.0.12
257
+ version: 0.0.3
264
258
  type: :runtime
265
259
  prerelease: false
266
260
  version_requirements: !ruby/object:Gem::Requirement
267
261
  requirements:
268
262
  - - "~>"
269
263
  - !ruby/object:Gem::Version
270
- version: 0.0.12
264
+ version: 0.0.3
271
265
  - !ruby/object:Gem::Dependency
272
- name: sinatra
266
+ name: react-rails
273
267
  requirement: !ruby/object:Gem::Requirement
274
268
  requirements:
275
269
  - - "~>"
276
270
  - !ruby/object:Gem::Version
277
- version: '2.0'
271
+ version: '2.5'
278
272
  type: :runtime
279
273
  prerelease: false
280
274
  version_requirements: !ruby/object:Gem::Requirement
281
275
  requirements:
282
276
  - - "~>"
283
277
  - !ruby/object:Gem::Version
284
- version: '2.0'
278
+ version: '2.5'
285
279
  - !ruby/object:Gem::Dependency
286
- name: active_link_to
280
+ name: sass-rails
287
281
  requirement: !ruby/object:Gem::Requirement
288
282
  requirements:
289
283
  - - "~>"
290
284
  - !ruby/object:Gem::Version
291
- version: '1.0'
285
+ version: '6.0'
292
286
  type: :runtime
293
287
  prerelease: false
294
288
  version_requirements: !ruby/object:Gem::Requirement
295
289
  requirements:
296
290
  - - "~>"
297
291
  - !ruby/object:Gem::Version
298
- version: '1.0'
292
+ version: '6.0'
299
293
  - !ruby/object:Gem::Dependency
300
- name: premailer-rails
294
+ name: shopify_api
301
295
  requirement: !ruby/object:Gem::Requirement
302
296
  requirements:
303
297
  - - "~>"
304
298
  - !ruby/object:Gem::Version
305
- version: '1.8'
299
+ version: '9.0'
306
300
  type: :runtime
307
301
  prerelease: false
308
302
  version_requirements: !ruby/object:Gem::Requirement
309
303
  requirements:
310
304
  - - "~>"
311
305
  - !ruby/object:Gem::Version
312
- version: '1.8'
306
+ version: '9.0'
313
307
  - !ruby/object:Gem::Dependency
314
- name: nokogiri
308
+ name: shopify_app
315
309
  requirement: !ruby/object:Gem::Requirement
316
310
  requirements:
317
311
  - - "~>"
318
312
  - !ruby/object:Gem::Version
319
- version: '1.7'
313
+ version: 12.0.7
320
314
  type: :runtime
321
315
  prerelease: false
322
316
  version_requirements: !ruby/object:Gem::Requirement
323
317
  requirements:
324
318
  - - "~>"
325
319
  - !ruby/object:Gem::Version
326
- version: '1.7'
320
+ version: 12.0.7
327
321
  - !ruby/object:Gem::Dependency
328
- name: rollbar
322
+ name: sidekiq
329
323
  requirement: !ruby/object:Gem::Requirement
330
324
  requirements:
331
325
  - - "~>"
332
326
  - !ruby/object:Gem::Version
333
- version: '2.14'
327
+ version: '6.0'
334
328
  type: :runtime
335
329
  prerelease: false
336
330
  version_requirements: !ruby/object:Gem::Requirement
337
331
  requirements:
338
332
  - - "~>"
339
333
  - !ruby/object:Gem::Version
340
- version: '2.14'
334
+ version: '6.0'
341
335
  - !ruby/object:Gem::Dependency
342
- name: oj
336
+ name: sinatra
343
337
  requirement: !ruby/object:Gem::Requirement
344
338
  requirements:
345
339
  - - "~>"
346
340
  - !ruby/object:Gem::Version
347
- version: '2.14'
341
+ version: '2.0'
348
342
  type: :runtime
349
343
  prerelease: false
350
344
  version_requirements: !ruby/object:Gem::Requirement
351
345
  requirements:
352
346
  - - "~>"
353
347
  - !ruby/object:Gem::Version
354
- version: '2.14'
348
+ version: '2.0'
355
349
  - !ruby/object:Gem::Dependency
356
- name: newrelic_rpm
350
+ name: turbolinks
357
351
  requirement: !ruby/object:Gem::Requirement
358
352
  requirements:
359
353
  - - "~>"
360
354
  - !ruby/object:Gem::Version
361
- version: '3.15'
355
+ version: '5.2'
362
356
  type: :runtime
363
357
  prerelease: false
364
358
  version_requirements: !ruby/object:Gem::Requirement
365
359
  requirements:
366
360
  - - "~>"
367
361
  - !ruby/object:Gem::Version
368
- version: '3.15'
362
+ version: '5.2'
369
363
  - !ruby/object:Gem::Dependency
370
- name: mailgun_rails
364
+ name: uglifier
371
365
  requirement: !ruby/object:Gem::Requirement
372
366
  requirements:
373
367
  - - "~>"
374
368
  - !ruby/object:Gem::Version
375
- version: '0.8'
369
+ version: '4.1'
376
370
  type: :runtime
377
371
  prerelease: false
378
372
  version_requirements: !ruby/object:Gem::Requirement
379
373
  requirements:
380
374
  - - "~>"
381
375
  - !ruby/object:Gem::Version
382
- version: '0.8'
376
+ version: '4.1'
383
377
  - !ruby/object:Gem::Dependency
384
- name: activemodel-serializers-xml
378
+ name: dotenv-rails
385
379
  requirement: !ruby/object:Gem::Requirement
386
380
  requirements:
387
381
  - - "~>"
388
382
  - !ruby/object:Gem::Version
389
- version: '1.0'
390
- type: :runtime
383
+ version: '2.0'
384
+ type: :development
391
385
  prerelease: false
392
386
  version_requirements: !ruby/object:Gem::Requirement
393
387
  requirements:
394
388
  - - "~>"
395
389
  - !ruby/object:Gem::Version
396
- version: '1.0'
390
+ version: '2.0'
397
391
  - !ruby/object:Gem::Dependency
398
- name: dotenv-rails
392
+ name: minitest
399
393
  requirement: !ruby/object:Gem::Requirement
400
394
  requirements:
401
- - - "~>"
395
+ - - '='
402
396
  - !ruby/object:Gem::Version
403
- version: '2.0'
397
+ version: 5.11.3
404
398
  type: :development
405
399
  prerelease: false
406
400
  version_requirements: !ruby/object:Gem::Requirement
407
401
  requirements:
408
- - - "~>"
402
+ - - '='
409
403
  - !ruby/object:Gem::Version
410
- version: '2.0'
404
+ version: 5.11.3
411
405
  - !ruby/object:Gem::Dependency
412
406
  name: minitest-reporters
413
407
  requirement: !ruby/object:Gem::Requirement
414
408
  requirements:
415
409
  - - '='
416
410
  - !ruby/object:Gem::Version
417
- version: 1.1.9
411
+ version: '1.3'
418
412
  type: :development
419
413
  prerelease: false
420
414
  version_requirements: !ruby/object:Gem::Requirement
421
415
  requirements:
422
416
  - - '='
423
417
  - !ruby/object:Gem::Version
424
- version: 1.1.9
418
+ version: '1.3'
425
419
  - !ruby/object:Gem::Dependency
426
- name: minitest
420
+ name: rubocop
427
421
  requirement: !ruby/object:Gem::Requirement
428
422
  requirements:
429
- - - '='
423
+ - - "~>"
430
424
  - !ruby/object:Gem::Version
431
- version: 5.10.1
425
+ version: '0.77'
432
426
  type: :development
433
427
  prerelease: false
434
428
  version_requirements: !ruby/object:Gem::Requirement
435
429
  requirements:
436
- - - '='
430
+ - - "~>"
437
431
  - !ruby/object:Gem::Version
438
- version: 5.10.1
432
+ version: '0.77'
439
433
  - !ruby/object:Gem::Dependency
440
- name: webmock
434
+ name: rubocop-performance
435
+ requirement: !ruby/object:Gem::Requirement
436
+ requirements:
437
+ - - "~>"
438
+ - !ruby/object:Gem::Version
439
+ version: 1.5.1
440
+ type: :development
441
+ prerelease: false
442
+ version_requirements: !ruby/object:Gem::Requirement
443
+ requirements:
444
+ - - "~>"
445
+ - !ruby/object:Gem::Version
446
+ version: 1.5.1
447
+ - !ruby/object:Gem::Dependency
448
+ name: rubocop-rails
441
449
  requirement: !ruby/object:Gem::Requirement
442
450
  requirements:
443
451
  - - "~>"
444
452
  - !ruby/object:Gem::Version
445
- version: '2.3'
453
+ version: 2.4.0
446
454
  type: :development
447
455
  prerelease: false
448
456
  version_requirements: !ruby/object:Gem::Requirement
449
457
  requirements:
450
458
  - - "~>"
451
459
  - !ruby/object:Gem::Version
452
- version: '2.3'
460
+ version: 2.4.0
453
461
  - !ruby/object:Gem::Dependency
454
462
  name: vcr
455
463
  requirement: !ruby/object:Gem::Requirement
456
464
  requirements:
457
465
  - - "~>"
458
466
  - !ruby/object:Gem::Version
459
- version: '3.0'
467
+ version: '5.0'
460
468
  type: :development
461
469
  prerelease: false
462
470
  version_requirements: !ruby/object:Gem::Requirement
463
471
  requirements:
464
472
  - - "~>"
465
473
  - !ruby/object:Gem::Version
466
- version: '3.0'
474
+ version: '5.0'
467
475
  - !ruby/object:Gem::Dependency
468
- name: rubocop
476
+ name: webmock
469
477
  requirement: !ruby/object:Gem::Requirement
470
478
  requirements:
471
479
  - - "~>"
472
480
  - !ruby/object:Gem::Version
473
- version: '0.50'
481
+ version: '3.6'
474
482
  type: :development
475
483
  prerelease: false
476
484
  version_requirements: !ruby/object:Gem::Requirement
477
485
  requirements:
478
486
  - - "~>"
479
487
  - !ruby/object:Gem::Version
480
- version: '0.50'
488
+ version: '3.6'
481
489
  description: Rails engine for Shopify applications.
482
490
  email:
483
491
  - gavin@gavinballard.com
@@ -563,9 +571,7 @@ files:
563
571
  - app/assets/stylesheets/disco_app/ui-kit/_ui-tabs.scss
564
572
  - app/assets/stylesheets/disco_app/ui-kit/_ui-type.scss
565
573
  - app/clients/disco_app/api_client.rb
566
- - app/clients/disco_app/disco_api_error.rb
567
- - app/clients/disco_app/rollbar_client.rb
568
- - app/clients/disco_app/rollbar_client_error.rb
574
+ - app/clients/disco_app/graphql_client.rb
569
575
  - app/controllers/disco_app/admin/app_settings_controller.rb
570
576
  - app/controllers/disco_app/admin/application_controller.rb
571
577
  - app/controllers/disco_app/admin/concerns/app_settings_controller.rb
@@ -585,6 +591,11 @@ files:
585
591
  - app/controllers/disco_app/concerns/carrier_request_controller.rb
586
592
  - app/controllers/disco_app/concerns/user_authenticated_controller.rb
587
593
  - app/controllers/disco_app/concerns/webhooks_controller.rb
594
+ - app/controllers/disco_app/flow/actions_controller.rb
595
+ - app/controllers/disco_app/flow/concerns/actions_controller.rb
596
+ - app/controllers/disco_app/flow/concerns/trigger_usage_controller.rb
597
+ - app/controllers/disco_app/flow/concerns/verifies_flow_payload.rb
598
+ - app/controllers/disco_app/flow/trigger_usage_controller.rb
588
599
  - app/controllers/disco_app/frame_controller.rb
589
600
  - app/controllers/disco_app/install_controller.rb
590
601
  - app/controllers/disco_app/subscriptions_controller.rb
@@ -597,16 +608,24 @@ files:
597
608
  - app/jobs/disco_app/app_uninstalled_job.rb
598
609
  - app/jobs/disco_app/concerns/app_installed_job.rb
599
610
  - app/jobs/disco_app/concerns/app_uninstalled_job.rb
611
+ - app/jobs/disco_app/concerns/customers_data_request_job.rb
612
+ - app/jobs/disco_app/concerns/customers_redact_job.rb
600
613
  - app/jobs/disco_app/concerns/render_asset_group_job.rb
614
+ - app/jobs/disco_app/concerns/shop_redact_job.rb
601
615
  - app/jobs/disco_app/concerns/shop_update_job.rb
602
616
  - app/jobs/disco_app/concerns/subscription_changed_job.rb
603
617
  - app/jobs/disco_app/concerns/synchronise_carrier_service_job.rb
604
618
  - app/jobs/disco_app/concerns/synchronise_resources_job.rb
605
619
  - app/jobs/disco_app/concerns/synchronise_users_job.rb
606
620
  - app/jobs/disco_app/concerns/synchronise_webhooks_job.rb
621
+ - app/jobs/disco_app/customers_data_request_job.rb
622
+ - app/jobs/disco_app/customers_redact_job.rb
623
+ - app/jobs/disco_app/flow/process_action_job.rb
624
+ - app/jobs/disco_app/flow/process_trigger_job.rb
607
625
  - app/jobs/disco_app/render_asset_group_job.rb
608
626
  - app/jobs/disco_app/send_subscription_job.rb
609
627
  - app/jobs/disco_app/shop_job.rb
628
+ - app/jobs/disco_app/shop_redact_job.rb
610
629
  - app/jobs/disco_app/shop_update_job.rb
611
630
  - app/jobs/disco_app/subscription_changed_job.rb
612
631
  - app/jobs/disco_app/synchronise_carrier_service_job.rb
@@ -628,6 +647,12 @@ files:
628
647
  - app/models/disco_app/concerns/synchronises.rb
629
648
  - app/models/disco_app/concerns/taggable.rb
630
649
  - app/models/disco_app/concerns/user.rb
650
+ - app/models/disco_app/flow/action.rb
651
+ - app/models/disco_app/flow/concerns/action.rb
652
+ - app/models/disco_app/flow/concerns/trigger.rb
653
+ - app/models/disco_app/flow/concerns/trigger_usage.rb
654
+ - app/models/disco_app/flow/trigger.rb
655
+ - app/models/disco_app/flow/trigger_usage.rb
631
656
  - app/models/disco_app/plan.rb
632
657
  - app/models/disco_app/plan_code.rb
633
658
  - app/models/disco_app/recurring_application_charge.rb
@@ -640,6 +665,11 @@ files:
640
665
  - app/resources/disco_app/admin/resources/shop_resource.rb
641
666
  - app/services/disco_app/carrier_request_service.rb
642
667
  - app/services/disco_app/charges_service.rb
668
+ - app/services/disco_app/flow/create_action.rb
669
+ - app/services/disco_app/flow/create_trigger.rb
670
+ - app/services/disco_app/flow/process_action.rb
671
+ - app/services/disco_app/flow/process_trigger.rb
672
+ - app/services/disco_app/flow/update_trigger_usage.rb
643
673
  - app/services/disco_app/partner_app_service.rb
644
674
  - app/services/disco_app/proxy_service.rb
645
675
  - app/services/disco_app/request_validation_service.rb
@@ -681,6 +711,8 @@ files:
681
711
  - db/migrate/20170315062629_add_sources_to_shop_subscriptions.rb
682
712
  - db/migrate/20170327214540_create_disco_app_users.rb
683
713
  - db/migrate/20170606160751_fix_disco_app_users_index.rb
714
+ - db/migrate/20181229100327_create_flow_actions_and_triggers.rb
715
+ - db/migrate/20200405000000_create_flow_trigger_usages.rb
684
716
  - lib/disco_app.rb
685
717
  - lib/disco_app/configuration.rb
686
718
  - lib/disco_app/constants.rb
@@ -689,37 +721,92 @@ files:
689
721
  - lib/disco_app/support/file_fixtures.rb
690
722
  - lib/disco_app/test_help.rb
691
723
  - lib/disco_app/version.rb
692
- - lib/generators/disco_app/USAGE
693
- - lib/generators/disco_app/disco_app_generator.rb
694
- - lib/generators/disco_app/templates/assets/javascripts/application.js
695
- - lib/generators/disco_app/templates/assets/javascripts/components.js
696
- - lib/generators/disco_app/templates/assets/stylesheets/application.scss
697
- - lib/generators/disco_app/templates/config/database.yml.tt
698
- - lib/generators/disco_app/templates/config/newrelic.yml
699
- - lib/generators/disco_app/templates/config/puma.rb
700
- - lib/generators/disco_app/templates/controllers/home_controller.rb
701
- - lib/generators/disco_app/templates/initializers/disco_app.rb
702
- - lib/generators/disco_app/templates/initializers/rollbar.rb
703
- - lib/generators/disco_app/templates/initializers/session_store.rb
704
- - lib/generators/disco_app/templates/initializers/shopify_app.rb
705
- - lib/generators/disco_app/templates/initializers/shopify_session_repository.rb
706
- - lib/generators/disco_app/templates/root/.codeclimate.yml
707
- - lib/generators/disco_app/templates/root/.editorconfig
708
- - lib/generators/disco_app/templates/root/.env
709
- - lib/generators/disco_app/templates/root/.env.local
710
- - lib/generators/disco_app/templates/root/.github/PULL_REQUEST_TEMPLATE.md
711
- - lib/generators/disco_app/templates/root/.gitignore
712
- - lib/generators/disco_app/templates/root/.rubocop.yml
713
- - lib/generators/disco_app/templates/root/.ruby-version
714
- - lib/generators/disco_app/templates/root/CHECKS
715
- - lib/generators/disco_app/templates/root/Procfile
716
- - lib/generators/disco_app/templates/root/README.md
717
- - lib/generators/disco_app/templates/views/home/index.html.erb
724
+ - lib/generators/disco_app/install/USAGE
725
+ - lib/generators/disco_app/install/install_generator.rb
726
+ - lib/generators/disco_app/install/templates/assets/javascripts/application.js
727
+ - lib/generators/disco_app/install/templates/assets/javascripts/components.js
728
+ - lib/generators/disco_app/install/templates/assets/stylesheets/application.scss
729
+ - lib/generators/disco_app/install/templates/config/appsignal.yml
730
+ - lib/generators/disco_app/install/templates/config/cable.yml.tt
731
+ - lib/generators/disco_app/install/templates/config/database.yml.tt
732
+ - lib/generators/disco_app/install/templates/config/environments/staging.rb
733
+ - lib/generators/disco_app/install/templates/config/puma.rb
734
+ - lib/generators/disco_app/install/templates/controllers/home_controller.rb
735
+ - lib/generators/disco_app/install/templates/initializers/disco_app.rb
736
+ - lib/generators/disco_app/install/templates/initializers/session_store.rb
737
+ - lib/generators/disco_app/install/templates/initializers/shopify_app.rb
738
+ - lib/generators/disco_app/install/templates/initializers/shopify_session_repository.rb
739
+ - lib/generators/disco_app/install/templates/initializers/timber.rb
740
+ - lib/generators/disco_app/install/templates/root/.editorconfig
741
+ - lib/generators/disco_app/install/templates/root/.env
742
+ - lib/generators/disco_app/install/templates/root/.env.local
743
+ - lib/generators/disco_app/install/templates/root/.github/PULL_REQUEST_TEMPLATE.md
744
+ - lib/generators/disco_app/install/templates/root/.gitignore
745
+ - lib/generators/disco_app/install/templates/root/.rspec
746
+ - lib/generators/disco_app/install/templates/root/.rubocop.yml
747
+ - lib/generators/disco_app/install/templates/root/.tool-versions
748
+ - lib/generators/disco_app/install/templates/root/CHECKS
749
+ - lib/generators/disco_app/install/templates/root/Procfile
750
+ - lib/generators/disco_app/install/templates/root/README.md
751
+ - lib/generators/disco_app/install/templates/root/package.json.tt
752
+ - lib/generators/disco_app/install/templates/spec/rails_helper.rb
753
+ - lib/generators/disco_app/install/templates/spec/spec_helper.rb
754
+ - lib/generators/disco_app/install/templates/spec/support/active_job.rb
755
+ - lib/generators/disco_app/install/templates/spec/support/coveralls.rb
756
+ - lib/generators/disco_app/install/templates/spec/support/database_cleaner.rb
757
+ - lib/generators/disco_app/install/templates/spec/support/factory_bot.rb
758
+ - lib/generators/disco_app/install/templates/spec/support/helpers/json_helper.rb
759
+ - lib/generators/disco_app/install/templates/spec/support/shared_examples/a_synchronise_job.rb
760
+ - lib/generators/disco_app/install/templates/spec/support/shoulda.rb
761
+ - lib/generators/disco_app/install/templates/spec/support/vcr.rb
762
+ - lib/generators/disco_app/install/templates/spec/support/webmock.rb
763
+ - lib/generators/disco_app/install/templates/views/home/index.html.erb
764
+ - lib/generators/disco_app/react/USAGE
765
+ - lib/generators/disco_app/react/react_generator.rb
766
+ - lib/generators/disco_app/react/templates/app/controllers/embedded/api/base_controller.rb
767
+ - lib/generators/disco_app/react/templates/app/controllers/embedded/api/home_controller.rb
768
+ - lib/generators/disco_app/react/templates/app/controllers/embedded/api/shops_controller.rb
769
+ - lib/generators/disco_app/react/templates/app/controllers/embedded/api/users_controller.rb
770
+ - lib/generators/disco_app/react/templates/app/controllers/embedded/home_controller.rb
771
+ - lib/generators/disco_app/react/templates/app/models/api_response.rb
772
+ - lib/generators/disco_app/react/templates/app/serializers/disco_app/shop_serializer.rb
773
+ - lib/generators/disco_app/react/templates/app/serializers/disco_app/user_serializer.rb
774
+ - lib/generators/disco_app/react/templates/app/serializers/empty_serializer.rb
775
+ - lib/generators/disco_app/react/templates/app/serializers/error_serializer.rb
776
+ - lib/generators/disco_app/react/templates/app/views/embedded/home/index.html.erb
777
+ - lib/generators/disco_app/react/templates/app/views/layouts/embedded.html.erb
778
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/App.jsx
779
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/HomePage.jsx
780
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/EmbeddedPage.jsx
781
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/ErrorBanner.jsx
782
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/PaginationWrapper.jsx
783
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/Shared/ScrollToTop.jsx
784
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/components/withApi.jsx
785
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/index.jsx
786
+ - lib/generators/disco_app/react/templates/app/webpack/javascripts/embedded/utils.js
787
+ - lib/generators/disco_app/react/templates/app/webpack/packs/embedded.js
788
+ - lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded.scss
789
+ - lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/banners.scss
790
+ - lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/busy.scss
791
+ - lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/index.scss
792
+ - lib/generators/disco_app/react/templates/app/webpack/stylesheets/embedded/shared/pagination.scss
793
+ - lib/generators/disco_app/react/templates/config/initializers/mime_types.rb
794
+ - lib/generators/disco_app/react/templates/config/initializers/omniauth.rb
795
+ - lib/generators/disco_app/react/templates/config/initializers/version.rb.tt
796
+ - lib/generators/disco_app/react/templates/config/webpack/staging.js
797
+ - lib/generators/disco_app/react/templates/config/webpack/test.js
798
+ - lib/generators/disco_app/react/templates/config/webpacker.yml
799
+ - lib/generators/disco_app/react/templates/root/.eslintignore
800
+ - lib/generators/disco_app/react/templates/root/.eslintrc
801
+ - lib/generators/disco_app/react/templates/root/.prettierrc
802
+ - lib/generators/disco_app/react/templates/root/VERSION
803
+ - lib/generators/disco_app/react/templates/root/babel.config.js
804
+ - lib/generators/disco_app/react/templates/root/package.json.tt
805
+ - lib/generators/disco_app/react/templates/root/postcss.config.js
718
806
  - lib/tasks/api.rake
719
807
  - lib/tasks/carrier_service.rake
720
808
  - lib/tasks/database.rake
721
809
  - lib/tasks/partner_app.rake
722
- - lib/tasks/rollbar.rake
723
810
  - lib/tasks/sessions.rake
724
811
  - lib/tasks/shops.rake
725
812
  - lib/tasks/start.rake
@@ -728,6 +815,7 @@ files:
728
815
  - test/clients/disco_app/api_client_test.rb
729
816
  - test/controllers/disco_app/admin/shops_controller_test.rb
730
817
  - test/controllers/disco_app/charges_controller_test.rb
818
+ - test/controllers/disco_app/flow/trigger_usage_controller_test.rb
731
819
  - test/controllers/disco_app/install_controller_test.rb
732
820
  - test/controllers/disco_app/subscriptions_controller_test.rb
733
821
  - test/controllers/disco_app/webhooks_controller_test.rb
@@ -735,6 +823,7 @@ files:
735
823
  - test/controllers/proxy_controller_test.rb
736
824
  - test/disco_app_test.rb
737
825
  - test/dummy/Rakefile
826
+ - test/dummy/app/assets/config/manifest.js
738
827
  - test/dummy/app/assets/javascripts/application.js
739
828
  - test/dummy/app/assets/stylesheets/application.scss
740
829
  - test/dummy/app/controllers/application_controller.rb
@@ -743,6 +832,7 @@ files:
743
832
  - test/dummy/app/controllers/home_controller.rb
744
833
  - test/dummy/app/controllers/proxy_controller.rb
745
834
  - test/dummy/app/helpers/application_helper.rb
835
+ - test/dummy/app/javascript/packs/application.js
746
836
  - test/dummy/app/jobs/application_job.rb
747
837
  - test/dummy/app/jobs/carts_update_job.rb
748
838
  - test/dummy/app/jobs/disco_app/app_installed_job.rb
@@ -762,10 +852,13 @@ files:
762
852
  - test/dummy/app/views/assets/widget.scss.erb
763
853
  - test/dummy/app/views/home/index.html.erb
764
854
  - test/dummy/app/views/snippets/widget.liquid.erb
855
+ - test/dummy/babel.config.js
765
856
  - test/dummy/bin/bundle
766
857
  - test/dummy/bin/rails
767
858
  - test/dummy/bin/rake
768
859
  - test/dummy/bin/setup
860
+ - test/dummy/bin/webpack
861
+ - test/dummy/bin/webpack-dev-server
769
862
  - test/dummy/config.ru
770
863
  - test/dummy/config/application.rb
771
864
  - test/dummy/config/boot.rb
@@ -774,6 +867,7 @@ files:
774
867
  - test/dummy/config/environment.rb
775
868
  - test/dummy/config/environments/development.rb
776
869
  - test/dummy/config/environments/production.rb
870
+ - test/dummy/config/environments/staging.rb
777
871
  - test/dummy/config/environments/test.rb
778
872
  - test/dummy/config/initializers/assets.rb
779
873
  - test/dummy/config/initializers/backtrace_silencers.rb
@@ -790,6 +884,11 @@ files:
790
884
  - test/dummy/config/locales/en.yml
791
885
  - test/dummy/config/routes.rb
792
886
  - test/dummy/config/secrets.yml
887
+ - test/dummy/config/webpack/development.js
888
+ - test/dummy/config/webpack/environment.js
889
+ - test/dummy/config/webpack/production.js
890
+ - test/dummy/config/webpack/test.js
891
+ - test/dummy/config/webpacker.yml
793
892
  - test/dummy/db/migrate/20160307182229_create_products.rb
794
893
  - test/dummy/db/migrate/20160530160739_create_asset_models.rb
795
894
  - test/dummy/db/migrate/20161105054746_create_carts.rb
@@ -17935,6 +18034,8 @@ files:
17935
18034
  - test/dummy/node_modules/yocto-queue/license
17936
18035
  - test/dummy/node_modules/yocto-queue/package.json
17937
18036
  - test/dummy/node_modules/yocto-queue/readme.md
18037
+ - test/dummy/package.json
18038
+ - test/dummy/postcss.config.js
17938
18039
  - test/dummy/public/404.html
17939
18040
  - test/dummy/public/422.html
17940
18041
  - test/dummy/public/500.html
@@ -18675,6 +18776,7 @@ files:
18675
18776
  - test/dummy/tmp/cache/webpacker/babel-loader-node-modules/d152dee8c0857bba9947d3a2f5c6b32a.json.gz
18676
18777
  - test/dummy/tmp/cache/webpacker/last-compilation-digest-development
18677
18778
  - test/dummy/tmp/cache/webpacker/last-compilation-digest-test
18779
+ - test/dummy/yarn.lock
18678
18780
  - test/fixtures/api/subscriptions/valid_request.json
18679
18781
  - test/fixtures/api/widget_store/assets/create_script_tag_js_request.json
18680
18782
  - test/fixtures/api/widget_store/assets/create_script_tag_js_response.json
@@ -18712,13 +18814,14 @@ files:
18712
18814
  - test/fixtures/api/widget_store/charges/get_declined_recurring_application_charge_response.json
18713
18815
  - test/fixtures/api/widget_store/charges/get_pending_application_charge_response.json
18714
18816
  - test/fixtures/api/widget_store/charges/get_pending_recurring_application_charge_response.json
18817
+ - test/fixtures/api/widget_store/empty_webhooks.json
18818
+ - test/fixtures/api/widget_store/existing_webhooks.json
18715
18819
  - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_request.json
18716
18820
  - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_response.json
18717
18821
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_request.json
18718
18822
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_response.json
18719
18823
  - test/fixtures/api/widget_store/shop.json
18720
18824
  - test/fixtures/api/widget_store/users.json
18721
- - test/fixtures/api/widget_store/webhooks.json
18722
18825
  - test/fixtures/assets/test.js
18723
18826
  - test/fixtures/assets/test.min.js
18724
18827
  - test/fixtures/carts.yml
@@ -18734,6 +18837,7 @@ files:
18734
18837
  - test/fixtures/products.yml
18735
18838
  - test/fixtures/webhooks/app_uninstalled.json
18736
18839
  - test/fixtures/webhooks/cart_updated.json
18840
+ - test/fixtures/webhooks/flow/trigger_usage.json
18737
18841
  - test/fixtures/webhooks/product_created.json
18738
18842
  - test/fixtures/webhooks/product_deleted.json
18739
18843
  - test/fixtures/webhooks/product_updated.json
@@ -18753,10 +18857,17 @@ files:
18753
18857
  - test/models/disco_app/shop_test.rb
18754
18858
  - test/models/disco_app/subscription_test.rb
18755
18859
  - test/services/disco_app/charges_service_test.rb
18860
+ - test/services/disco_app/flow/create_action_test.rb
18861
+ - test/services/disco_app/flow/create_trigger_test.rb
18862
+ - test/services/disco_app/flow/process_action_test.rb
18863
+ - test/services/disco_app/flow/process_trigger_test.rb
18864
+ - test/services/disco_app/flow/update_trigger_usage_test.rb
18756
18865
  - test/services/disco_app/subscription_service_test.rb
18757
18866
  - test/support/test_file_fixtures.rb
18758
18867
  - test/support/test_shopify_api.rb
18759
18868
  - test/test_helper.rb
18869
+ - test/vcr/flow_trigger_invalid_title.yml
18870
+ - test/vcr/flow_trigger_valid.yml
18760
18871
  - test/vcr/webhook_failure.yml
18761
18872
  homepage: https://github.com/discolabs/disco_app/
18762
18873
  licenses:
@@ -18777,8 +18888,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
18777
18888
  - !ruby/object:Gem::Version
18778
18889
  version: '0'
18779
18890
  requirements: []
18780
- rubyforge_project:
18781
- rubygems_version: 2.7.3
18891
+ rubygems_version: 3.0.3
18782
18892
  signing_key:
18783
18893
  specification_version: 4
18784
18894
  summary: Rails engine for Shopify applications.
@@ -18790,6 +18900,7 @@ test_files:
18790
18900
  - test/dummy/app/models/widget_configuration.rb
18791
18901
  - test/dummy/app/models/application_record.rb
18792
18902
  - test/dummy/app/models/cart.rb
18903
+ - test/dummy/app/javascript/packs/application.js
18793
18904
  - test/dummy/app/jobs/disco_app/app_installed_job.rb
18794
18905
  - test/dummy/app/jobs/disco_app/app_uninstalled_job.rb
18795
18906
  - test/dummy/app/jobs/products_delete_job.rb
@@ -18808,24 +18919,33 @@ test_files:
18808
18919
  - test/dummy/app/views/assets/widget.js.erb
18809
18920
  - test/dummy/app/views/assets/test.js.erb
18810
18921
  - test/dummy/app/views/assets/script_tag.js.erb
18922
+ - test/dummy/app/assets/config/manifest.js
18811
18923
  - test/dummy/app/assets/javascripts/application.js
18812
18924
  - test/dummy/app/assets/stylesheets/application.scss
18813
18925
  - test/dummy/app/helpers/application_helper.rb
18814
18926
  - test/dummy/bin/rake
18815
18927
  - test/dummy/bin/setup
18816
18928
  - test/dummy/bin/bundle
18929
+ - test/dummy/bin/webpack
18930
+ - test/dummy/bin/webpack-dev-server
18817
18931
  - test/dummy/bin/rails
18818
18932
  - test/dummy/config/secrets.yml
18819
18933
  - test/dummy/config/routes.rb
18820
18934
  - test/dummy/config/locales/en.yml
18821
18935
  - test/dummy/config/environments/production.rb
18936
+ - test/dummy/config/environments/staging.rb
18822
18937
  - test/dummy/config/environments/development.rb
18823
18938
  - test/dummy/config/environments/test.rb
18824
18939
  - test/dummy/config/environment.rb
18825
18940
  - test/dummy/config/application.rb
18826
18941
  - test/dummy/config/database.yml
18942
+ - test/dummy/config/webpack/development.js
18943
+ - test/dummy/config/webpack/test.js
18944
+ - test/dummy/config/webpack/production.js
18945
+ - test/dummy/config/webpack/environment.js
18827
18946
  - test/dummy/config/database.codeship.yml
18828
18947
  - test/dummy/config/boot.rb
18948
+ - test/dummy/config/webpacker.yml
18829
18949
  - test/dummy/config/initializers/shopify_app.rb
18830
18950
  - test/dummy/config/initializers/backtrace_silencers.rb
18831
18951
  - test/dummy/config/initializers/mime_types.rb
@@ -35979,6 +36099,7 @@ test_files:
35979
36099
  - test/dummy/node_modules/setprototypeof/package.json
35980
36100
  - test/dummy/node_modules/setprototypeof/index.d.ts
35981
36101
  - test/dummy/Rakefile
36102
+ - test/dummy/yarn.lock
35982
36103
  - test/dummy/public/favicon.ico
35983
36104
  - test/dummy/public/422.html
35984
36105
  - test/dummy/public/500.html
@@ -35986,12 +36107,15 @@ test_files:
35986
36107
  - test/dummy/public/packs-test/js/application-4907031b66a47994a8ac.js
35987
36108
  - test/dummy/public/packs-test/js/application-4907031b66a47994a8ac.js.map
35988
36109
  - test/dummy/public/packs-test/manifest.json
36110
+ - test/dummy/babel.config.js
36111
+ - test/dummy/package.json
35989
36112
  - test/dummy/db/schema.rb
35990
36113
  - test/dummy/db/migrate/20161105054746_create_carts.rb
35991
36114
  - test/dummy/db/migrate/20160530160739_create_asset_models.rb
35992
36115
  - test/dummy/db/migrate/20160307182229_create_products.rb
35993
36116
  - test/dummy/log/test.log
35994
36117
  - test/dummy/log/development.log
36118
+ - test/dummy/postcss.config.js
35995
36119
  - test/dummy/tmp/cache/webpacker/last-compilation-digest-test
35996
36120
  - test/dummy/tmp/cache/webpacker/last-compilation-digest-development
35997
36121
  - test/dummy/tmp/cache/webpacker/babel-loader-node-modules/483a36f433d67197030aa9d42cf876fe.json
@@ -36734,7 +36858,9 @@ test_files:
36734
36858
  - test/models/disco_app/can_be_liquified_test.rb
36735
36859
  - test/models/disco_app/subscription_test.rb
36736
36860
  - test/disco_app_test.rb
36861
+ - test/vcr/flow_trigger_valid.yml
36737
36862
  - test/vcr/webhook_failure.yml
36863
+ - test/vcr/flow_trigger_invalid_title.yml
36738
36864
  - test/support/test_shopify_api.rb
36739
36865
  - test/support/test_file_fixtures.rb
36740
36866
  - test/fixtures/products.yml
@@ -36748,7 +36874,6 @@ test_files:
36748
36874
  - test/fixtures/widget_configurations.yml
36749
36875
  - test/fixtures/liquid/model.liquid
36750
36876
  - test/fixtures/api/widget_store/carrier_services.json
36751
- - test/fixtures/api/widget_store/webhooks.json
36752
36877
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_response.json
36753
36878
  - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_response.json
36754
36879
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_request.json
@@ -36772,6 +36897,8 @@ test_files:
36772
36897
  - test/fixtures/api/widget_store/users.json
36773
36898
  - test/fixtures/api/widget_store/shop.json
36774
36899
  - test/fixtures/api/widget_store/carrier_services_create.json
36900
+ - test/fixtures/api/widget_store/existing_webhooks.json
36901
+ - test/fixtures/api/widget_store/empty_webhooks.json
36775
36902
  - test/fixtures/api/widget_store/assets/create_widget_liquid_request.json
36776
36903
  - test/fixtures/api/widget_store/assets/create_test_js_response.json
36777
36904
  - test/fixtures/api/widget_store/assets/create_widget_js_request.json
@@ -36796,6 +36923,7 @@ test_files:
36796
36923
  - test/fixtures/webhooks/product_updated.json
36797
36924
  - test/fixtures/webhooks/product_created.json
36798
36925
  - test/fixtures/webhooks/app_uninstalled.json
36926
+ - test/fixtures/webhooks/flow/trigger_usage.json
36799
36927
  - test/fixtures/assets/test.js
36800
36928
  - test/fixtures/assets/test.min.js
36801
36929
  - test/fixtures/carts.yml
@@ -36813,6 +36941,12 @@ test_files:
36813
36941
  - test/controllers/disco_app/admin/shops_controller_test.rb
36814
36942
  - test/controllers/disco_app/subscriptions_controller_test.rb
36815
36943
  - test/controllers/disco_app/webhooks_controller_test.rb
36944
+ - test/controllers/disco_app/flow/trigger_usage_controller_test.rb
36816
36945
  - test/controllers/home_controller_test.rb
36817
36946
  - test/services/disco_app/subscription_service_test.rb
36818
36947
  - test/services/disco_app/charges_service_test.rb
36948
+ - test/services/disco_app/flow/update_trigger_usage_test.rb
36949
+ - test/services/disco_app/flow/process_trigger_test.rb
36950
+ - test/services/disco_app/flow/process_action_test.rb
36951
+ - test/services/disco_app/flow/create_trigger_test.rb
36952
+ - test/services/disco_app/flow/create_action_test.rb