cortex 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (342) hide show
  1. checksums.yaml +7 -0
  2. data/.babelrc +18 -0
  3. data/.codeclimate.yml +43 -0
  4. data/.csslintrc +2 -0
  5. data/.editorconfig +9 -0
  6. data/.eslintignore +1 -0
  7. data/.eslintrc.yml +277 -0
  8. data/.github/PULL_REQUEST_TEMPLATE.md +47 -0
  9. data/.gitignore +82 -0
  10. data/.npmignore +34 -0
  11. data/.postcssrc.yml +3 -0
  12. data/.rspec +3 -0
  13. data/.rubocop.yml +1156 -0
  14. data/CODE_OF_CONDUCT.md +74 -0
  15. data/CONTRIBUTING.md +58 -0
  16. data/Gemfile +101 -0
  17. data/Gemfile.lock +604 -0
  18. data/Guardfile +23 -0
  19. data/LICENSE.md +201 -0
  20. data/README.md +239 -0
  21. data/Rakefile +22 -0
  22. data/app/assets/config/cortex_manifest.js +4 -0
  23. data/app/assets/fonts/cortex/Montserrat-Light.otf +0 -0
  24. data/app/assets/fonts/cortex/Montserrat-Medium.otf +0 -0
  25. data/app/assets/fonts/cortex/Montserrat-Regular.otf +0 -0
  26. data/app/assets/fonts/cortex/Montserrat-SemiBold.otf +0 -0
  27. data/app/assets/images/cortex/favicon.ico +0 -0
  28. data/app/assets/images/cortex/icons/add.svg +59 -0
  29. data/app/assets/images/cortex/icons/blog.png +0 -0
  30. data/app/assets/images/cortex/icons/media.png +0 -0
  31. data/app/assets/images/cortex/logo.svg +43 -0
  32. data/app/assets/javascripts/cortex/application.js +17 -0
  33. data/app/assets/javascripts/cortex/authentication.js +6 -0
  34. data/app/assets/javascripts/cortex/base.js +6 -0
  35. data/app/assets/javascripts/cortex/datepicker_init.js +29 -0
  36. data/app/assets/javascripts/cortex/flash.js +7 -0
  37. data/app/assets/javascripts/cortex/form.js +6 -0
  38. data/app/assets/javascripts/cortex/media_dialogs.js +40 -0
  39. data/app/assets/javascripts/cortex/quick_links.js +13 -0
  40. data/app/assets/stylesheets/cortex/application.scss +34 -0
  41. data/app/assets/stylesheets/cortex/authentication.scss +34 -0
  42. data/app/assets/stylesheets/cortex/base.scss +4 -0
  43. data/app/assets/stylesheets/cortex/bootstrap-namespaced.scss +57 -0
  44. data/app/assets/stylesheets/cortex/components/card.scss +9 -0
  45. data/app/assets/stylesheets/cortex/components/dialog.scss +67 -0
  46. data/app/assets/stylesheets/cortex/components/flash.scss +60 -0
  47. data/app/assets/stylesheets/cortex/components/form.scss +45 -0
  48. data/app/assets/stylesheets/cortex/components/header.scss +53 -0
  49. data/app/assets/stylesheets/cortex/components/index.scss +28 -0
  50. data/app/assets/stylesheets/cortex/components/jumbo-button.scss +41 -0
  51. data/app/assets/stylesheets/cortex/components/loaders.scss +76 -0
  52. data/app/assets/stylesheets/cortex/components/notes.scss +26 -0
  53. data/app/assets/stylesheets/cortex/components/sidebar.scss +120 -0
  54. data/app/assets/stylesheets/cortex/components/table.scss +7 -0
  55. data/app/assets/stylesheets/cortex/components/tenant-switcher.scss +209 -0
  56. data/app/assets/stylesheets/cortex/components/ui.scss +119 -0
  57. data/app/assets/stylesheets/cortex/demo.scss +140 -0
  58. data/app/assets/stylesheets/cortex/directives/aspect-ratio.scss +9 -0
  59. data/app/assets/stylesheets/cortex/helpers.scss +1701 -0
  60. data/app/assets/stylesheets/cortex/layout.scss +21 -0
  61. data/app/assets/stylesheets/cortex/material-icons.scss +13 -0
  62. data/app/assets/stylesheets/cortex/variables/_colors.scss +46 -0
  63. data/app/assets/stylesheets/cortex/variables/_material-overrides.scss +1 -0
  64. data/app/assets/stylesheets/cortex/variables/_typography.scss +114 -0
  65. data/app/cells/cortex/application_cell.rb +8 -0
  66. data/app/cells/cortex/content_type/nav.haml +5 -0
  67. data/app/cells/cortex/content_type_cell.rb +10 -0
  68. data/app/cells/cortex/field_cell.rb +35 -0
  69. data/app/cells/cortex/index/content_item/column.haml +4 -0
  70. data/app/cells/cortex/index/content_item_cell.rb +37 -0
  71. data/app/cells/cortex/index/index.haml +5 -0
  72. data/app/cells/cortex/index/table_body.haml +11 -0
  73. data/app/cells/cortex/index/table_headers.haml +5 -0
  74. data/app/cells/cortex/index_cell.rb +53 -0
  75. data/app/cells/cortex/wizard/column/show.haml +10 -0
  76. data/app/cells/cortex/wizard/column_cell.rb +21 -0
  77. data/app/cells/cortex/wizard/field/show.haml +30 -0
  78. data/app/cells/cortex/wizard/field_cell.rb +29 -0
  79. data/app/cells/cortex/wizard/plugin/show.haml +1 -0
  80. data/app/cells/cortex/wizard/plugin_cell.rb +28 -0
  81. data/app/cells/cortex/wizard/show.haml +1 -0
  82. data/app/cells/cortex/wizard/step/show.haml +2 -0
  83. data/app/cells/cortex/wizard/step_cell.rb +17 -0
  84. data/app/cells/cortex/wizard_cell.rb +15 -0
  85. data/app/containers/cortex/transaction_container.rb +23 -0
  86. data/app/controllers/concerns/cortex/decoratable.rb +16 -0
  87. data/app/controllers/cortex/admin_controller.rb +7 -0
  88. data/app/controllers/cortex/application_controller.rb +19 -0
  89. data/app/controllers/cortex/authentication/passwords_controller.rb +3 -0
  90. data/app/controllers/cortex/authentication/sessions_controller.rb +3 -0
  91. data/app/controllers/cortex/content_items_controller.rb +75 -0
  92. data/app/controllers/cortex/content_types_controller.rb +19 -0
  93. data/app/controllers/cortex/dashboards_controller.rb +7 -0
  94. data/app/controllers/cortex/graphql_controller.rb +40 -0
  95. data/app/controllers/cortex/tenants_controller.rb +12 -0
  96. data/app/devise/cortex/authentication_failure.rb +12 -0
  97. data/app/graphql/cortex/cortex_schema.rb +8 -0
  98. data/app/graphql/cortex/interfaces/.keep +0 -0
  99. data/app/graphql/cortex/mutations/.keep +0 -0
  100. data/app/graphql/cortex/types/content_item_type.rb +31 -0
  101. data/app/graphql/cortex/types/content_type_type.rb +23 -0
  102. data/app/graphql/cortex/types/contract_type.rb +10 -0
  103. data/app/graphql/cortex/types/date_time_type.rb +8 -0
  104. data/app/graphql/cortex/types/field_item_type.rb +15 -0
  105. data/app/graphql/cortex/types/field_type.rb +18 -0
  106. data/app/graphql/cortex/types/mutation_type.rb +5 -0
  107. data/app/graphql/cortex/types/query_type.rb +45 -0
  108. data/app/graphql/cortex/types/tenant_type.rb +19 -0
  109. data/app/graphql/cortex/types/user_type.rb +20 -0
  110. data/app/helpers/cortex/application_helper.rb +75 -0
  111. data/app/helpers/cortex/cells/association_helper.rb +25 -0
  112. data/app/helpers/cortex/content_item_helper.rb +106 -0
  113. data/app/helpers/cortex/dashboard_helper.rb +19 -0
  114. data/app/helpers/cortex/popup_helper.rb +27 -0
  115. data/app/jobs/cortex/application_job.rb +4 -0
  116. data/app/mailers/cortex/application_mailer.rb +6 -0
  117. data/app/mailers/cortex/password_reset_mailer.rb +13 -0
  118. data/app/models/concerns/cortex/belongs_to_tenant.rb +13 -0
  119. data/app/models/concerns/cortex/has_firstname_lastname.rb +11 -0
  120. data/app/models/concerns/cortex/has_gravatar.rb +18 -0
  121. data/app/models/concerns/cortex/searchable.rb +11 -0
  122. data/app/models/concerns/cortex/searchable_content_item.rb +31 -0
  123. data/app/models/concerns/cortex/searchable_content_item_for_content_type.rb +52 -0
  124. data/app/models/concerns/cortex/searchable_content_type.rb +11 -0
  125. data/app/models/cortex/application_record.rb +17 -0
  126. data/app/models/cortex/content_item.rb +71 -0
  127. data/app/models/cortex/content_type.rb +27 -0
  128. data/app/models/cortex/contentable_decorator.rb +8 -0
  129. data/app/models/cortex/contract.rb +12 -0
  130. data/app/models/cortex/decorator.rb +13 -0
  131. data/app/models/cortex/field.rb +36 -0
  132. data/app/models/cortex/field_item.rb +54 -0
  133. data/app/models/cortex/field_type.rb +44 -0
  134. data/app/models/cortex/permission.rb +11 -0
  135. data/app/models/cortex/role.rb +12 -0
  136. data/app/models/cortex/tenant.rb +41 -0
  137. data/app/models/cortex/user.rb +77 -0
  138. data/app/operations/cortex/database_transact_operation.rb +17 -0
  139. data/app/operations/cortex/execute_content_item_state_change_operation.rb +16 -0
  140. data/app/operations/cortex/parse_content_item_field_items_operation.rb +18 -0
  141. data/app/operations/cortex/persist_content_item_operation.rb +12 -0
  142. data/app/policies/cortex/application_policy.rb +55 -0
  143. data/app/policies/cortex/content_item_policy.rb +49 -0
  144. data/app/policies/cortex/content_type_policy.rb +38 -0
  145. data/app/transactions/concerns/cortex/content_itemable.rb +15 -0
  146. data/app/transactions/concerns/cortex/field_item_transactor.rb +28 -0
  147. data/app/transactions/concerns/cortex/widget_parsable.rb +19 -0
  148. data/app/transactions/cortex/application_transaction.rb +5 -0
  149. data/app/transactions/cortex/create_content_item_transaction.rb +35 -0
  150. data/app/transactions/cortex/get_content_item_transaction.rb +4 -0
  151. data/app/transactions/cortex/get_content_items_for_content_type_transaction.rb +34 -0
  152. data/app/transactions/cortex/get_publish_state_transaction.rb +28 -0
  153. data/app/transactions/cortex/new_field_item_transaction.rb +16 -0
  154. data/app/transactions/cortex/update_content_item_transaction.rb +45 -0
  155. data/app/transactions/cortex/update_field_item_transaction.rb +23 -0
  156. data/app/types/cortex/application_types.rb +21 -0
  157. data/app/types/cortex/content_item_transaction_type.rb +10 -0
  158. data/app/types/cortex/core_types.rb +5 -0
  159. data/app/types/cortex/transaction_type.rb +5 -0
  160. data/app/views/cortex/authentication/passwords/new.html.haml +13 -0
  161. data/app/views/cortex/authentication/sessions/new.html.haml +20 -0
  162. data/app/views/cortex/authentication/shared/_links.html.haml +19 -0
  163. data/app/views/cortex/content_items/_form.html.haml +13 -0
  164. data/app/views/cortex/content_items/_grid.html.haml +1 -0
  165. data/app/views/cortex/content_items/edit.html.haml +2 -0
  166. data/app/views/cortex/content_items/index.html.haml +4 -0
  167. data/app/views/cortex/content_items/new.html.haml +2 -0
  168. data/app/views/cortex/content_types/index.html.haml +2 -0
  169. data/app/views/cortex/content_types/new.html.haml +0 -0
  170. data/app/views/cortex/dashboards/index.html.haml +6 -0
  171. data/app/views/cortex/graphql/ide.haml +1 -0
  172. data/app/views/cortex/partials/_breadcrumb.html.haml +2 -0
  173. data/app/views/cortex/partials/_cortex_redux_state.html.haml +1 -0
  174. data/app/views/cortex/partials/_flash.html.haml +25 -0
  175. data/app/views/cortex/partials/_media_dialogs.html.haml +13 -0
  176. data/app/views/cortex/partials/_navigation.html.haml +15 -0
  177. data/app/views/cortex/partials/_notes.html.haml +17 -0
  178. data/app/views/cortex/partials/_quick_links.html.haml +22 -0
  179. data/app/views/cortex/partials/_sidebar.html.haml +7 -0
  180. data/app/views/cortex/partials/_topbar.html.haml +5 -0
  181. data/app/views/cortex/partials/_user_control.html.haml +7 -0
  182. data/app/views/cortex/partials/authentication/_header.html.haml +4 -0
  183. data/app/views/cortex/partials/trackers/_google_analytics.html.haml +10 -0
  184. data/app/views/cortex/partials/trackers/_qualtrics.html.haml +10 -0
  185. data/app/views/cortex/password_reset_mailer/send_password_reset.html.erb +5 -0
  186. data/app/views/cortex/password_reset_mailer/send_password_reset.text.erb +5 -0
  187. data/app/views/layouts/cortex/application.html.haml +30 -0
  188. data/app/views/layouts/cortex/devise.html.haml +19 -0
  189. data/app/views/layouts/cortex/mailer.html.erb +13 -0
  190. data/app/views/layouts/cortex/mailer.text.erb +1 -0
  191. data/bin/rails +25 -0
  192. data/config/config.yml +22 -0
  193. data/config/initializers/devise.rb +35 -0
  194. data/config/initializers/elasticsearch.rb +3 -0
  195. data/config/initializers/filter_parameter_logging.rb +4 -0
  196. data/config/initializers/flipper.rb +16 -0
  197. data/config/initializers/graphiql.rb +51 -0
  198. data/config/initializers/inflections.rb +16 -0
  199. data/config/initializers/load_config.rb +16 -0
  200. data/config/initializers/mime_types.rb +5 -0
  201. data/config/initializers/plugins.rb +17 -0
  202. data/config/initializers/react_on_rails.rb +15 -0
  203. data/config/initializers/rolify.rb +9 -0
  204. data/config/initializers/tag_parsers.rb +5 -0
  205. data/config/locales/devise.en.yml +64 -0
  206. data/config/routes.rb +41 -0
  207. data/cortex.gemspec +84 -0
  208. data/db/migrate/0_enable_pgcrypto_extension.rb +5 -0
  209. data/db/migrate/10_create_fields.rb +15 -0
  210. data/db/migrate/11_create_content_items.rb +14 -0
  211. data/db/migrate/12_create_field_items.rb +12 -0
  212. data/db/migrate/13_create_field_types.rb +5 -0
  213. data/db/migrate/1_create_users.rb +14 -0
  214. data/db/migrate/2_create_tenants.rb +26 -0
  215. data/db/migrate/3_add_devise_to_users.rb +49 -0
  216. data/db/migrate/4_create_roles.rb +15 -0
  217. data/db/migrate/5_create_permissions.rb +16 -0
  218. data/db/migrate/6_create_flipper_tables.rb +20 -0
  219. data/db/migrate/7_create_contracts.rb +11 -0
  220. data/db/migrate/8_create_decorators.rb +21 -0
  221. data/db/migrate/9_create_content_types.rb +17 -0
  222. data/db/seeds.rb +40 -0
  223. data/db/seeds.yml +33 -0
  224. data/lib/assets/.keep +0 -0
  225. data/lib/breadcrumbs/title_builder.rb +12 -0
  226. data/lib/cortex.rb +4 -0
  227. data/lib/cortex/engine.rb +41 -0
  228. data/lib/cortex/version.rb +3 -0
  229. data/lib/helpers/utility_helper.rb +7 -0
  230. data/lib/tasks/cortex_tasks.rake +13 -0
  231. data/lib/tasks/elasticsearch_tasks.rake +1 -0
  232. data/node_package/.babelrc +26 -0
  233. data/node_package/src/components/side_bar/environment_flag.jsx +21 -0
  234. data/node_package/src/components/side_bar/tenant_list.jsx +65 -0
  235. data/node_package/src/components/wizard/column.jsx +29 -0
  236. data/node_package/src/components/wizard/field.jsx +22 -0
  237. data/node_package/src/components/wizard/step.jsx +20 -0
  238. data/node_package/src/constants/tenant_switcher.jsx +17 -0
  239. data/node_package/src/constants/type_constants.jsx +12 -0
  240. data/node_package/src/constants/wizard.jsx +9 -0
  241. data/node_package/src/containers/layout.jsx +33 -0
  242. data/node_package/src/containers/tenant_switcher_container.jsx +115 -0
  243. data/node_package/src/containers/wizard_container.jsx +28 -0
  244. data/node_package/src/elements/loaders.jsx +7 -0
  245. data/node_package/src/helpers/formatting.jsx +5 -0
  246. data/node_package/src/helpers/tenant_ancestry.jsx +14 -0
  247. data/node_package/src/helpers/tenant_lookup.jsx +23 -0
  248. data/node_package/src/index.jsx +21 -0
  249. data/node_package/src/reducers/index.jsx +13 -0
  250. data/node_package/src/reducers/rails_context_reducer.jsx +5 -0
  251. data/node_package/src/reducers/tenant_switcher_reducer.jsx +74 -0
  252. data/node_package/src/reducers/wizard_reducer.jsx +32 -0
  253. data/node_package/src/services/rails_api_service.jsx +13 -0
  254. data/node_package/src/store/store.jsx +15 -0
  255. data/package.json +66 -0
  256. data/spec/dummy/Rakefile +7 -0
  257. data/spec/dummy/app/assets/config/manifest.js +4 -0
  258. data/spec/dummy/app/assets/javascripts/application.js +2 -0
  259. data/spec/dummy/app/assets/stylesheets/application.scss +2 -0
  260. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  261. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  262. data/spec/dummy/app/javascript/packs/application.js +8 -0
  263. data/spec/dummy/app/javascript/packs/cortex.jsx +1 -0
  264. data/spec/dummy/app/jobs/application_job.rb +2 -0
  265. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  266. data/spec/dummy/app/views/layouts/application.html.haml +11 -0
  267. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  268. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  269. data/spec/dummy/bin/bundle +105 -0
  270. data/spec/dummy/bin/rails +4 -0
  271. data/spec/dummy/bin/rake +4 -0
  272. data/spec/dummy/bin/rspec +17 -0
  273. data/spec/dummy/bin/setup +38 -0
  274. data/spec/dummy/bin/update +29 -0
  275. data/spec/dummy/bin/webpack +29 -0
  276. data/spec/dummy/bin/webpack-dev-server +29 -0
  277. data/spec/dummy/bin/yarn +11 -0
  278. data/spec/dummy/config.ru +7 -0
  279. data/spec/dummy/config/apollo_engine_proxy.yml +23 -0
  280. data/spec/dummy/config/application.rb +21 -0
  281. data/spec/dummy/config/boot.rb +11 -0
  282. data/spec/dummy/config/cable.yml +9 -0
  283. data/spec/dummy/config/config.yml +22 -0
  284. data/spec/dummy/config/database.yml +22 -0
  285. data/spec/dummy/config/environment.rb +5 -0
  286. data/spec/dummy/config/environments/development.rb +74 -0
  287. data/spec/dummy/config/environments/production.rb +103 -0
  288. data/spec/dummy/config/environments/staging.rb +103 -0
  289. data/spec/dummy/config/environments/test.rb +65 -0
  290. data/spec/dummy/config/initializers/application_controller_renderer.rb +6 -0
  291. data/spec/dummy/config/initializers/assets.rb +14 -0
  292. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  293. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  294. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  295. data/spec/dummy/config/initializers/inflections.rb +16 -0
  296. data/spec/dummy/config/initializers/load_config.rb +9 -0
  297. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  298. data/spec/dummy/config/initializers/react_on_rails.rb +41 -0
  299. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  300. data/spec/dummy/config/initializers/sentry.rb +6 -0
  301. data/spec/dummy/config/initializers/session_store.rb +7 -0
  302. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  303. data/spec/dummy/config/locales/en.yml +8 -0
  304. data/spec/dummy/config/newrelic.yml +224 -0
  305. data/spec/dummy/config/puma.rb +47 -0
  306. data/spec/dummy/config/routes.rb +5 -0
  307. data/spec/dummy/config/secrets.yml +32 -0
  308. data/spec/dummy/config/sidekiq.yml +9 -0
  309. data/spec/dummy/config/webpack/development.js +3 -0
  310. data/spec/dummy/config/webpack/environment.js +3 -0
  311. data/spec/dummy/config/webpack/production.js +3 -0
  312. data/spec/dummy/config/webpack/test.js +3 -0
  313. data/spec/dummy/config/webpacker.yml +66 -0
  314. data/spec/dummy/db/migrate/20180118233001_enable_pgcrypto_extension.cortex.rb +6 -0
  315. data/spec/dummy/db/migrate/20180118233002_create_users.cortex.rb +15 -0
  316. data/spec/dummy/db/migrate/20180118233003_create_tenants.cortex.rb +27 -0
  317. data/spec/dummy/db/migrate/20180118233004_add_devise_to_users.cortex.rb +50 -0
  318. data/spec/dummy/db/migrate/20180118233005_create_roles.cortex.rb +16 -0
  319. data/spec/dummy/db/migrate/20180118233006_create_permissions.cortex.rb +17 -0
  320. data/spec/dummy/db/migrate/20180118233007_create_flipper_tables.cortex.rb +21 -0
  321. data/spec/dummy/db/migrate/20180118233008_create_contracts.cortex.rb +12 -0
  322. data/spec/dummy/db/migrate/20180118233009_create_decorators.cortex.rb +22 -0
  323. data/spec/dummy/db/migrate/20180118233010_create_content_types.cortex.rb +18 -0
  324. data/spec/dummy/db/migrate/20180118233011_create_fields.cortex.rb +16 -0
  325. data/spec/dummy/db/migrate/20180118233012_create_content_items.cortex.rb +15 -0
  326. data/spec/dummy/db/migrate/20180118233013_create_field_items.cortex.rb +13 -0
  327. data/spec/dummy/db/migrate/20180118233014_create_field_types.cortex.rb +6 -0
  328. data/spec/dummy/db/schema.rb +258 -0
  329. data/spec/dummy/db/seeds.rb +1 -0
  330. data/spec/dummy/lib/tasks/content_types_tasks.rake +31 -0
  331. data/spec/dummy/lib/tasks/employer/blog_tasks.rake +345 -0
  332. data/spec/dummy/package.json +28 -0
  333. data/spec/dummy/public/404.html +67 -0
  334. data/spec/dummy/public/422.html +67 -0
  335. data/spec/dummy/public/500.html +66 -0
  336. data/spec/dummy/public/robots.txt +5 -0
  337. data/spec/dummy/spec/javascripts/support/jasmine.yml +50 -0
  338. data/spec/dummy/yarn.lock +6615 -0
  339. data/spec/rails_helper.rb +57 -0
  340. data/spec/spec_helper.rb +96 -0
  341. data/yarn.lock +6032 -0
  342. metadata +1061 -0
@@ -0,0 +1,74 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, gender identity and expression, level of experience,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at toastercup@gmail.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at [http://contributor-covenant.org/version/1/4][version]
72
+
73
+ [homepage]: http://contributor-covenant.org
74
+ [version]: http://contributor-covenant.org/version/1/4/
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,58 @@
1
+ # Contributing
2
+
3
+ Anyone and everyone is encouraged to fork Cortex and submit pull requests, propose new features and create issues.
4
+
5
+ * Ideally, we'd first like to hear your concerns or suggestions in the form of an [issue][issue]. We can all avoid
6
+ unnecessary re-work if a problem and its potential solution are first discussed before code is written.
7
+
8
+ * Fork on Github, then clone your repo:
9
+
10
+ ```sh
11
+ git clone git@github.com:your-username/cortex.git
12
+ ```
13
+
14
+ * Follow the [setup instructions][setup]
15
+
16
+ * Follow the [test suite instructions][test-suite], and ensure all tests pass
17
+
18
+ * Make your changes. Make frequent commits, but keep commits and commit messages focused on individual, atomic
19
+ feature changes or fixes. If you end up making many small commits during debug or development that belong to the same
20
+ chunk of functionality, squash those commits before creating a pull request.
21
+
22
+ * Add tests for your change. Once again, ensure all tests pass.
23
+
24
+ * Push to a branch on your fork and [submit a pull request][pr]. Your PR must adhere to the following conventions:
25
+ * For CareerBuilder team members, if the PR relates to a JIRA card, use the following naming convention:
26
+ * `JIRA card #`: `PR Title`
27
+ * Example: `COR-365: Unhandled Error on Media Upload`
28
+ * For open source contributors, or if the PR does not relate to a JIRA card, use:
29
+ * `PR Title`
30
+ * Example: `Unhandled Error on Media Upload`
31
+ * Names should use titleized capitalization. i.e.: `Login Form Redesign and Refactor`
32
+ * Names should be dense, yet informative. For example, `Testing` is not an appropriate PR name, nor is
33
+ `For update_url task, must use the body method to actually retrieve the stream from the S3 GetObjectOutput`.
34
+ PR names are more high-level than commit messages.
35
+ * PRs should be tagged appropriately (i.e. `enhancement`, `bug`, etc). Tags should be preferred over including things
36
+ like 'bug' in the PR name.
37
+ * PR Descriptions should be a clearly-separated, bulleted list summarizing what's contained in the commits, as well as
38
+ any relevant notes or considerations for developers or ops. It should also detail any potential follow-up issues.
39
+ * If working with a versioned library, open source users should not include version bumps or changelog updates in
40
+ their PRs.
41
+
42
+ From here, it's up to the Cortex maintenance team (<employersitecontentproducts@cb.com>) to review your pull request.
43
+ We operate in 2-week sprint lifecycles, but we'll try to get to your request or contribution sooner. We may suggest
44
+ further improvements or alternatives, or the community at large may have input.
45
+
46
+ Some things that will increase the chances that your pull request will be accepted:
47
+
48
+ * Write [good tests][tests]
49
+ * Write [good commit messages][commit]
50
+ * Be consistent
51
+ * If applicable, suggest additional options or alternatives, follow-up issues or potential future improvements
52
+
53
+ [issue]: https://github.com/cbdr/cortex/issues
54
+ [tests]: http://betterspecs.org
55
+ [commit]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
56
+ [setup]: https://github.com/cbdr/cortex#setup
57
+ [pr]: https://github.com/cbdr/cortex/compare
58
+ [test-suite]: https://github.com/cbdr/cortex#running-test-suite
data/Gemfile ADDED
@@ -0,0 +1,101 @@
1
+ source 'https://rubygems.org'
2
+ git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
+
4
+ # Declare your gem's dependencies in cortex.gemspec.
5
+ # Bundler will treat runtime dependencies like base dependencies, and
6
+ # development dependencies will be added by default to the :development group.
7
+ gemspec
8
+
9
+ # Declare any dependencies that are still in development here instead of in
10
+ # your gemspec. These might include edge Rails or gems from your path or
11
+ # Git. Remember to move these dependencies to your gemspec before releasing
12
+ # your gem to rubygems.org.
13
+
14
+ # To use a debugger
15
+ # gem 'byebug', group: [:development, :test]
16
+
17
+ group :development, :test do
18
+ # Environment
19
+ gem 'dotenv-rails', require: 'dotenv/rails-now'
20
+
21
+ # Debug
22
+ gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
23
+ gem 'pry-rails'
24
+ gem 'pry-nav'
25
+ gem 'pry-remote'
26
+ gem 'pry-stack_explorer'
27
+
28
+ # Specs/Helpers
29
+ gem 'rspec-rails'
30
+ gem 'guard-rspec', require: false
31
+ gem 'database_cleaner'
32
+ gem 'factory_girl_rails', '~> 4.8' # TODO: upgrade to factory_bot
33
+ gem 'faker', '~> 1.8'
34
+ gem 'phantomjs', '~> 2.1'
35
+ gem 'jasmine-rails', '~> 0.14'
36
+
37
+ # Documentation
38
+ gem 'rails-erd'
39
+
40
+ #
41
+ # Dummy Spec App
42
+ #
43
+
44
+ # Pipeline
45
+ gem 'sprockets-rails', '3.2.1', require: 'sprockets/railtie'
46
+ gem 'sprockets', '3.7.2'
47
+ gem 'uglifier', '~> 3.2.0'
48
+
49
+ # View
50
+ gem 'haml', '~> 5.0'
51
+
52
+ # Style
53
+ gem 'sass-rails', '~> 5.0'
54
+
55
+ # Cortex
56
+ gem 'cortex-plugins-core', '~> 3.0'
57
+
58
+ # Jobs
59
+ gem 'sidekiq', '~> 5.1.3'
60
+ gem 'sidekiq-failures', '~> 1.0.0'
61
+ gem 'sinatra', '~> 2.0.3'
62
+
63
+ # Data
64
+ gem 'pg', '>= 0.18', '< 2.0'
65
+ gem 'redis-rails', '~> 5.0'
66
+
67
+ # API
68
+ gem 'apollo-tracing', '~> 1.6.0'
69
+
70
+ # JavaScript
71
+ gem 'react_on_rails', '9.0.3'
72
+ gem 'mini_racer'
73
+ gem 'webpacker'
74
+ end
75
+
76
+ group :test do
77
+ # Rspec
78
+ gem 'json_spec', '~> 1.1'
79
+ gem 'rspec-sidekiq', '~> 3.0'
80
+ gem 'shoulda-matchers', '~> 3.1'
81
+
82
+ # Coverage
83
+ gem 'simplecov'
84
+ gem 'codeclimate-test-reporter'
85
+
86
+ # Capybara for feature testing, Poltergeist for PhantomJS
87
+ gem 'capybara'
88
+ gem 'poltergeist'
89
+
90
+ # Mocking/Faking
91
+ gem 'mocha', '~> 1.3', require: false
92
+ gem 'timecop', '~> 0.9'
93
+ gem 'email_spec'
94
+
95
+ # Javascript
96
+ gem 'guard-jasmine', '~> 2.1'
97
+ gem 'jasmine-core', '~> 2.8'
98
+
99
+ # Data
100
+ gem 'elasticsearch-extensions', '~> 0.0.29'
101
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,604 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ cortex (0.1.0)
5
+ addressable (~> 2.5.2)
6
+ awesome_nested_set (~> 3.1.4)
7
+ breadcrumbs_on_rails (~> 3.0.1)
8
+ cells (~> 4.1.7)
9
+ cells-haml (~> 0.0.10)
10
+ cells-rails (~> 0.0.8)
11
+ cortex-exceptions (= 0.0.4)
12
+ devise (~> 4.4.3)
13
+ dry-struct (~> 0.5.0)
14
+ dry-transaction (~> 0.13.0)
15
+ dry-types (~> 0.13.2)
16
+ elasticsearch-dsl (~> 0.1)
17
+ elasticsearch-model (~> 5.1)
18
+ elasticsearch-rails (~> 5.1)
19
+ flipper (~> 0.16)
20
+ flipper-active_record (~> 0.16)
21
+ flipper-ui (~> 0.16)
22
+ gon (~> 6.2.1)
23
+ graphiql-rails (~> 1.4.11)
24
+ graphql (~> 1.7.14)
25
+ haml (~> 5.0)
26
+ hashie (~> 3.5.7)
27
+ json
28
+ mimemagic (~> 0.3.2)
29
+ mini_racer
30
+ nokogiri
31
+ paranoia (~> 2.4)
32
+ pomona (~> 0.7)
33
+ pundit (~> 1.1.0)
34
+ rack-cors (~> 1.0.2)
35
+ rails (~> 5.1.6)
36
+ react_on_rails (= 9.0.3)
37
+ rolify (~> 5.2.0)
38
+ sass-rails (~> 5.0)
39
+ transitions (~> 1.2)
40
+ webpacker
41
+
42
+ GEM
43
+ remote: https://rubygems.org/
44
+ specs:
45
+ actioncable (5.1.6)
46
+ actionpack (= 5.1.6)
47
+ nio4r (~> 2.0)
48
+ websocket-driver (~> 0.6.1)
49
+ actionmailer (5.1.6)
50
+ actionpack (= 5.1.6)
51
+ actionview (= 5.1.6)
52
+ activejob (= 5.1.6)
53
+ mail (~> 2.5, >= 2.5.4)
54
+ rails-dom-testing (~> 2.0)
55
+ actionpack (5.1.6)
56
+ actionview (= 5.1.6)
57
+ activesupport (= 5.1.6)
58
+ rack (~> 2.0)
59
+ rack-test (>= 0.6.3)
60
+ rails-dom-testing (~> 2.0)
61
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
62
+ actionview (5.1.6)
63
+ activesupport (= 5.1.6)
64
+ builder (~> 3.1)
65
+ erubi (~> 1.4)
66
+ rails-dom-testing (~> 2.0)
67
+ rails-html-sanitizer (~> 1.0, >= 1.0.3)
68
+ activejob (5.1.6)
69
+ activesupport (= 5.1.6)
70
+ globalid (>= 0.3.6)
71
+ activemodel (5.1.6)
72
+ activesupport (= 5.1.6)
73
+ activerecord (5.1.6)
74
+ activemodel (= 5.1.6)
75
+ activesupport (= 5.1.6)
76
+ arel (~> 8.0)
77
+ activesupport (5.1.6)
78
+ concurrent-ruby (~> 1.0, >= 1.0.2)
79
+ i18n (>= 0.7, < 2)
80
+ minitest (~> 5.1)
81
+ tzinfo (~> 1.1)
82
+ addressable (2.5.2)
83
+ public_suffix (>= 2.0.2, < 4.0)
84
+ ansi (1.5.0)
85
+ apollo-tracing (1.6.0)
86
+ graphql (>= 1.7.0, < 2)
87
+ arel (8.0.0)
88
+ awesome_nested_set (3.1.4)
89
+ activerecord (>= 4.0.0, < 5.3)
90
+ aws-eventstream (1.0.1)
91
+ aws-partitions (1.97.0)
92
+ aws-sdk-core (3.23.0)
93
+ aws-eventstream (~> 1.0)
94
+ aws-partitions (~> 1.0)
95
+ aws-sigv4 (~> 1.0)
96
+ jmespath (~> 1.0)
97
+ aws-sdk-kms (1.7.0)
98
+ aws-sdk-core (~> 3)
99
+ aws-sigv4 (~> 1.0)
100
+ aws-sdk-s3 (1.17.0)
101
+ aws-sdk-core (~> 3, >= 3.21.2)
102
+ aws-sdk-kms (~> 1)
103
+ aws-sigv4 (~> 1.0)
104
+ aws-sigv4 (1.0.3)
105
+ bcrypt (3.1.12)
106
+ binding_of_caller (0.8.0)
107
+ debug_inspector (>= 0.0.1)
108
+ breadcrumbs_on_rails (3.0.1)
109
+ builder (3.2.3)
110
+ byebug (10.0.2)
111
+ capybara (3.5.0)
112
+ addressable
113
+ mini_mime (>= 0.1.3)
114
+ nokogiri (~> 1.8)
115
+ rack (>= 1.6.0)
116
+ rack-test (>= 0.6.3)
117
+ xpath (~> 3.1)
118
+ cells (4.1.7)
119
+ declarative-builder (< 0.2.0)
120
+ declarative-option (< 0.2.0)
121
+ tilt (>= 1.4, < 3)
122
+ uber (< 0.2.0)
123
+ cells-haml (0.0.10)
124
+ cells (>= 4.0.1, <= 6.0.0)
125
+ haml (>= 4.1.0.beta.1)
126
+ cells-rails (0.0.9)
127
+ actionpack (>= 3.0)
128
+ cells (>= 4.1.6, < 5.0.0)
129
+ childprocess (0.9.0)
130
+ ffi (~> 1.0, >= 1.0.11)
131
+ choice (0.2.0)
132
+ cliver (0.3.2)
133
+ codeclimate-test-reporter (1.0.8)
134
+ simplecov (<= 0.13)
135
+ coderay (1.1.2)
136
+ concurrent-ruby (1.0.5)
137
+ connection_pool (2.2.2)
138
+ cortex-exceptions (0.0.4)
139
+ cortex-plugins-core (3.0.0)
140
+ aws-sdk-s3 (~> 1.5)
141
+ cells (~> 4.1)
142
+ cells-haml (~> 0.0)
143
+ cells-rails (~> 0.0)
144
+ fastimage (~> 2.1)
145
+ image_optim (~> 0.25)
146
+ image_optim_pack (~> 0.5)
147
+ image_processing (~> 0.4)
148
+ jsonb_accessor (~> 1.0)
149
+ mimemagic (~> 0.3)
150
+ mini_magick (~> 4.8)
151
+ rails (>= 5)
152
+ shrine (~> 2.7)
153
+ crass (1.0.4)
154
+ database_cleaner (1.7.0)
155
+ debug_inspector (0.0.3)
156
+ declarative-builder (0.1.0)
157
+ declarative-option (< 0.2.0)
158
+ declarative-option (0.1.0)
159
+ devise (4.4.3)
160
+ bcrypt (~> 3.0)
161
+ orm_adapter (~> 0.1)
162
+ railties (>= 4.1.0, < 6.0)
163
+ responders
164
+ warden (~> 1.2.3)
165
+ diff-lcs (1.3)
166
+ docile (1.1.5)
167
+ dotenv (2.5.0)
168
+ dotenv-rails (2.5.0)
169
+ dotenv (= 2.5.0)
170
+ railties (>= 3.2, < 6.0)
171
+ down (4.5.0)
172
+ dry-configurable (0.7.0)
173
+ concurrent-ruby (~> 1.0)
174
+ dry-container (0.6.0)
175
+ concurrent-ruby (~> 1.0)
176
+ dry-configurable (~> 0.1, >= 0.1.3)
177
+ dry-core (0.4.7)
178
+ concurrent-ruby (~> 1.0)
179
+ dry-equalizer (0.2.1)
180
+ dry-events (0.1.0)
181
+ concurrent-ruby (~> 1.0)
182
+ dry-core (~> 0.4)
183
+ dry-equalizer (~> 0.2)
184
+ dry-inflector (0.1.2)
185
+ dry-logic (0.4.2)
186
+ dry-container (~> 0.2, >= 0.2.6)
187
+ dry-core (~> 0.2)
188
+ dry-equalizer (~> 0.2)
189
+ dry-matcher (0.7.0)
190
+ dry-monads (1.0.0)
191
+ concurrent-ruby (~> 1.0)
192
+ dry-core (~> 0.4, >= 0.4.4)
193
+ dry-equalizer
194
+ dry-struct (0.5.0)
195
+ dry-core (~> 0.4, >= 0.4.3)
196
+ dry-equalizer (~> 0.2)
197
+ dry-types (~> 0.13)
198
+ ice_nine (~> 0.11)
199
+ dry-transaction (0.13.0)
200
+ dry-container (>= 0.2.8)
201
+ dry-events (>= 0.1.0)
202
+ dry-matcher (>= 0.7.0)
203
+ dry-monads (>= 0.4.0)
204
+ dry-types (0.13.2)
205
+ concurrent-ruby (~> 1.0)
206
+ dry-container (~> 0.3)
207
+ dry-core (~> 0.4, >= 0.4.4)
208
+ dry-equalizer (~> 0.2)
209
+ dry-inflector (~> 0.1, >= 0.1.2)
210
+ dry-logic (~> 0.4, >= 0.4.2)
211
+ elasticsearch (5.0.5)
212
+ elasticsearch-api (= 5.0.5)
213
+ elasticsearch-transport (= 5.0.5)
214
+ elasticsearch-api (5.0.5)
215
+ multi_json
216
+ elasticsearch-dsl (0.1.6)
217
+ elasticsearch-extensions (0.0.29)
218
+ ansi
219
+ elasticsearch
220
+ ruby-prof
221
+ elasticsearch-model (5.1.0)
222
+ activesupport (> 3)
223
+ elasticsearch (~> 5)
224
+ hashie
225
+ elasticsearch-rails (5.1.0)
226
+ elasticsearch-transport (5.0.5)
227
+ faraday
228
+ multi_json
229
+ email_spec (2.2.0)
230
+ htmlentities (~> 4.3.3)
231
+ launchy (~> 2.1)
232
+ mail (~> 2.7)
233
+ erubi (1.7.1)
234
+ erubis (2.7.0)
235
+ execjs (2.7.0)
236
+ exifr (1.3.4)
237
+ factory_girl (4.9.0)
238
+ activesupport (>= 3.0.0)
239
+ factory_girl_rails (4.9.0)
240
+ factory_girl (~> 4.9.0)
241
+ railties (>= 3.0.0)
242
+ faker (1.9.1)
243
+ i18n (>= 0.7)
244
+ faraday (0.15.2)
245
+ multipart-post (>= 1.2, < 3)
246
+ fastimage (2.1.3)
247
+ ffi (1.9.25)
248
+ flipper (0.16.0)
249
+ flipper-active_record (0.16.0)
250
+ activerecord (>= 3.2, < 6)
251
+ flipper (~> 0.16.0)
252
+ flipper-ui (0.16.0)
253
+ erubis (~> 2.7.0)
254
+ flipper (~> 0.16.0)
255
+ rack (>= 1.4, < 3)
256
+ rack-protection (>= 1.5.3, < 2.1.0)
257
+ formatador (0.2.5)
258
+ fspath (3.1.0)
259
+ globalid (0.4.1)
260
+ activesupport (>= 4.2.0)
261
+ gon (6.2.1)
262
+ actionpack (>= 3.0)
263
+ multi_json
264
+ request_store (>= 1.0)
265
+ graphiql-rails (1.4.11)
266
+ railties
267
+ sprockets-rails
268
+ graphql (1.7.14)
269
+ guard (2.14.2)
270
+ formatador (>= 0.2.4)
271
+ listen (>= 2.7, < 4.0)
272
+ lumberjack (>= 1.0.12, < 2.0)
273
+ nenv (~> 0.1)
274
+ notiffany (~> 0.0)
275
+ pry (>= 0.9.12)
276
+ shellany (~> 0.0)
277
+ thor (>= 0.18.1)
278
+ guard-compat (1.2.1)
279
+ guard-jasmine (2.1.0)
280
+ childprocess (~> 0.5)
281
+ guard (~> 2.14)
282
+ guard-compat (~> 1.2)
283
+ jasmine (~> 2.4)
284
+ multi_json (~> 1.12)
285
+ thor (~> 0.19)
286
+ tilt
287
+ guard-rspec (4.7.3)
288
+ guard (~> 2.1)
289
+ guard-compat (~> 1.1)
290
+ rspec (>= 2.99.0, < 4.0)
291
+ haml (5.0.4)
292
+ temple (>= 0.8.0)
293
+ tilt
294
+ hashie (3.5.7)
295
+ htmlentities (4.3.4)
296
+ i18n (1.0.1)
297
+ concurrent-ruby (~> 1.0)
298
+ ice_nine (0.11.2)
299
+ image_optim (0.26.1)
300
+ exifr (~> 1.2, >= 1.2.2)
301
+ fspath (~> 3.0)
302
+ image_size (~> 1.5)
303
+ in_threads (~> 1.3)
304
+ progress (~> 3.0, >= 3.0.1)
305
+ image_optim_pack (0.5.1)
306
+ fspath (>= 2.1, < 4)
307
+ image_optim (~> 0.19)
308
+ image_processing (0.11.2)
309
+ image_size (1.5.0)
310
+ in_threads (1.5.0)
311
+ jasmine (2.99.0)
312
+ jasmine-core (>= 2.99.0, < 3.0.0)
313
+ phantomjs
314
+ rack (>= 1.2.1)
315
+ rake
316
+ jasmine-core (2.99.2)
317
+ jasmine-rails (0.14.8)
318
+ jasmine-core (>= 1.3, < 3.0)
319
+ phantomjs (>= 1.9)
320
+ railties (>= 3.2.0)
321
+ sprockets-rails
322
+ jmespath (1.4.0)
323
+ json (2.1.0)
324
+ json_spec (1.1.5)
325
+ multi_json (~> 1.0)
326
+ rspec (>= 2.0, < 4.0)
327
+ jsonb_accessor (1.0.0)
328
+ activerecord (>= 5.0)
329
+ activesupport (>= 5.0)
330
+ pg (>= 0.18.1)
331
+ launchy (2.4.3)
332
+ addressable (~> 2.3)
333
+ libv8 (6.7.288.46.1)
334
+ listen (3.1.5)
335
+ rb-fsevent (~> 0.9, >= 0.9.4)
336
+ rb-inotify (~> 0.9, >= 0.9.7)
337
+ ruby_dep (~> 1.2)
338
+ loofah (2.2.2)
339
+ crass (~> 1.0.2)
340
+ nokogiri (>= 1.5.9)
341
+ lumberjack (1.0.13)
342
+ mail (2.7.0)
343
+ mini_mime (>= 0.1.1)
344
+ metaclass (0.0.4)
345
+ method_source (0.8.2)
346
+ mimemagic (0.3.2)
347
+ mini_magick (4.8.0)
348
+ mini_mime (1.0.0)
349
+ mini_portile2 (2.3.0)
350
+ mini_racer (0.2.0)
351
+ libv8 (>= 6.3)
352
+ minitest (5.11.3)
353
+ mocha (1.6.0)
354
+ metaclass (~> 0.0.1)
355
+ multi_json (1.13.1)
356
+ multipart-post (2.0.0)
357
+ mustermann (1.0.2)
358
+ nenv (0.3.0)
359
+ nio4r (2.3.1)
360
+ nokogiri (1.8.4)
361
+ mini_portile2 (~> 2.3.0)
362
+ notiffany (0.1.1)
363
+ nenv (~> 0.1)
364
+ shellany (~> 0.0)
365
+ orm_adapter (0.5.0)
366
+ paranoia (2.4.1)
367
+ activerecord (>= 4.0, < 5.3)
368
+ pg (1.0.0)
369
+ phantomjs (2.1.1.0)
370
+ poltergeist (1.18.1)
371
+ capybara (>= 2.1, < 4)
372
+ cliver (~> 0.3.1)
373
+ websocket-driver (>= 0.2.0)
374
+ pomona (0.7.0)
375
+ progress (3.4.0)
376
+ pry (0.10.4)
377
+ coderay (~> 1.1.0)
378
+ method_source (~> 0.8.1)
379
+ slop (~> 3.4)
380
+ pry-nav (0.2.4)
381
+ pry (>= 0.9.10, < 0.11.0)
382
+ pry-rails (0.3.6)
383
+ pry (>= 0.10.4)
384
+ pry-remote (0.1.8)
385
+ pry (~> 0.9)
386
+ slop (~> 3.0)
387
+ pry-stack_explorer (0.4.9.2)
388
+ binding_of_caller (>= 0.7)
389
+ pry (>= 0.9.11)
390
+ public_suffix (3.0.2)
391
+ pundit (1.1.0)
392
+ activesupport (>= 3.0.0)
393
+ rack (2.0.5)
394
+ rack-cors (1.0.2)
395
+ rack-protection (2.0.3)
396
+ rack
397
+ rack-proxy (0.6.4)
398
+ rack
399
+ rack-test (1.1.0)
400
+ rack (>= 1.0, < 3)
401
+ rails (5.1.6)
402
+ actioncable (= 5.1.6)
403
+ actionmailer (= 5.1.6)
404
+ actionpack (= 5.1.6)
405
+ actionview (= 5.1.6)
406
+ activejob (= 5.1.6)
407
+ activemodel (= 5.1.6)
408
+ activerecord (= 5.1.6)
409
+ activesupport (= 5.1.6)
410
+ bundler (>= 1.3.0)
411
+ railties (= 5.1.6)
412
+ sprockets-rails (>= 2.0.0)
413
+ rails-dom-testing (2.0.3)
414
+ activesupport (>= 4.2.0)
415
+ nokogiri (>= 1.6)
416
+ rails-erd (1.5.2)
417
+ activerecord (>= 3.2)
418
+ activesupport (>= 3.2)
419
+ choice (~> 0.2.0)
420
+ ruby-graphviz (~> 1.2)
421
+ rails-html-sanitizer (1.0.4)
422
+ loofah (~> 2.2, >= 2.2.2)
423
+ railties (5.1.6)
424
+ actionpack (= 5.1.6)
425
+ activesupport (= 5.1.6)
426
+ method_source
427
+ rake (>= 0.8.7)
428
+ thor (>= 0.18.1, < 2.0)
429
+ rainbow (2.2.2)
430
+ rake
431
+ rake (12.3.1)
432
+ rb-fsevent (0.10.3)
433
+ rb-inotify (0.9.10)
434
+ ffi (>= 0.5.0, < 2)
435
+ react_on_rails (9.0.3)
436
+ addressable
437
+ connection_pool
438
+ execjs (~> 2.5)
439
+ rails (>= 3.2)
440
+ rainbow (~> 2.2)
441
+ redis (4.0.1)
442
+ redis-actionpack (5.0.2)
443
+ actionpack (>= 4.0, < 6)
444
+ redis-rack (>= 1, < 3)
445
+ redis-store (>= 1.1.0, < 2)
446
+ redis-activesupport (5.0.7)
447
+ activesupport (>= 3, < 6)
448
+ redis-store (>= 1.3, < 2)
449
+ redis-rack (2.0.4)
450
+ rack (>= 1.5, < 3)
451
+ redis-store (>= 1.2, < 2)
452
+ redis-rails (5.0.2)
453
+ redis-actionpack (>= 5.0, < 6)
454
+ redis-activesupport (>= 5.0, < 6)
455
+ redis-store (>= 1.2, < 2)
456
+ redis-store (1.5.0)
457
+ redis (>= 2.2, < 5)
458
+ request_store (1.4.1)
459
+ rack (>= 1.4)
460
+ responders (2.4.0)
461
+ actionpack (>= 4.2.0, < 5.3)
462
+ railties (>= 4.2.0, < 5.3)
463
+ rolify (5.2.0)
464
+ rspec (3.7.0)
465
+ rspec-core (~> 3.7.0)
466
+ rspec-expectations (~> 3.7.0)
467
+ rspec-mocks (~> 3.7.0)
468
+ rspec-core (3.7.1)
469
+ rspec-support (~> 3.7.0)
470
+ rspec-expectations (3.7.0)
471
+ diff-lcs (>= 1.2.0, < 2.0)
472
+ rspec-support (~> 3.7.0)
473
+ rspec-mocks (3.7.0)
474
+ diff-lcs (>= 1.2.0, < 2.0)
475
+ rspec-support (~> 3.7.0)
476
+ rspec-rails (3.7.2)
477
+ actionpack (>= 3.0)
478
+ activesupport (>= 3.0)
479
+ railties (>= 3.0)
480
+ rspec-core (~> 3.7.0)
481
+ rspec-expectations (~> 3.7.0)
482
+ rspec-mocks (~> 3.7.0)
483
+ rspec-support (~> 3.7.0)
484
+ rspec-sidekiq (3.0.3)
485
+ rspec-core (~> 3.0, >= 3.0.0)
486
+ sidekiq (>= 2.4.0)
487
+ rspec-support (3.7.1)
488
+ ruby-graphviz (1.2.3)
489
+ ruby-prof (0.17.0)
490
+ ruby_dep (1.5.0)
491
+ sass (3.5.7)
492
+ sass-listen (~> 4.0.0)
493
+ sass-listen (4.0.0)
494
+ rb-fsevent (~> 0.9, >= 0.9.4)
495
+ rb-inotify (~> 0.9, >= 0.9.7)
496
+ sass-rails (5.0.7)
497
+ railties (>= 4.0.0, < 6)
498
+ sass (~> 3.1)
499
+ sprockets (>= 2.8, < 4.0)
500
+ sprockets-rails (>= 2.0, < 4.0)
501
+ tilt (>= 1.1, < 3)
502
+ shellany (0.0.1)
503
+ shoulda-matchers (3.1.2)
504
+ activesupport (>= 4.0.0)
505
+ shrine (2.11.0)
506
+ down (~> 4.1)
507
+ sidekiq (5.1.3)
508
+ concurrent-ruby (~> 1.0)
509
+ connection_pool (~> 2.2, >= 2.2.0)
510
+ rack-protection (>= 1.5.0)
511
+ redis (>= 3.3.5, < 5)
512
+ sidekiq-failures (1.0.0)
513
+ sidekiq (>= 4.0.0)
514
+ simplecov (0.13.0)
515
+ docile (~> 1.1.0)
516
+ json (>= 1.8, < 3)
517
+ simplecov-html (~> 0.10.0)
518
+ simplecov-html (0.10.2)
519
+ sinatra (2.0.3)
520
+ mustermann (~> 1.0)
521
+ rack (~> 2.0)
522
+ rack-protection (= 2.0.3)
523
+ tilt (~> 2.0)
524
+ slop (3.6.0)
525
+ sprockets (3.7.2)
526
+ concurrent-ruby (~> 1.0)
527
+ rack (> 1, < 3)
528
+ sprockets-rails (3.2.1)
529
+ actionpack (>= 4.0)
530
+ activesupport (>= 4.0)
531
+ sprockets (>= 3.0.0)
532
+ temple (0.8.0)
533
+ thor (0.20.0)
534
+ thread_safe (0.3.6)
535
+ tilt (2.0.8)
536
+ timecop (0.9.1)
537
+ transitions (1.2.1)
538
+ tzinfo (1.2.5)
539
+ thread_safe (~> 0.1)
540
+ uber (0.1.0)
541
+ uglifier (3.2.0)
542
+ execjs (>= 0.3.0, < 3)
543
+ warden (1.2.7)
544
+ rack (>= 1.0)
545
+ webpacker (3.5.5)
546
+ activesupport (>= 4.2)
547
+ rack-proxy (>= 0.6.1)
548
+ railties (>= 4.2)
549
+ websocket-driver (0.6.5)
550
+ websocket-extensions (>= 0.1.0)
551
+ websocket-extensions (0.1.3)
552
+ xpath (3.1.0)
553
+ nokogiri (~> 1.8)
554
+
555
+ PLATFORMS
556
+ ruby
557
+
558
+ DEPENDENCIES
559
+ apollo-tracing (~> 1.6.0)
560
+ byebug
561
+ capybara
562
+ codeclimate-test-reporter
563
+ cortex!
564
+ cortex-plugins-core (~> 3.0)
565
+ database_cleaner
566
+ dotenv-rails
567
+ elasticsearch-extensions (~> 0.0.29)
568
+ email_spec
569
+ factory_girl_rails (~> 4.8)
570
+ faker (~> 1.8)
571
+ guard-jasmine (~> 2.1)
572
+ guard-rspec
573
+ haml (~> 5.0)
574
+ jasmine-core (~> 2.8)
575
+ jasmine-rails (~> 0.14)
576
+ json_spec (~> 1.1)
577
+ mini_racer
578
+ mocha (~> 1.3)
579
+ pg (>= 0.18, < 2.0)
580
+ phantomjs (~> 2.1)
581
+ poltergeist
582
+ pry-nav
583
+ pry-rails
584
+ pry-remote
585
+ pry-stack_explorer
586
+ rails-erd
587
+ react_on_rails (= 9.0.3)
588
+ redis-rails (~> 5.0)
589
+ rspec-rails
590
+ rspec-sidekiq (~> 3.0)
591
+ sass-rails (~> 5.0)
592
+ shoulda-matchers (~> 3.1)
593
+ sidekiq (~> 5.1.3)
594
+ sidekiq-failures (~> 1.0.0)
595
+ simplecov
596
+ sinatra (~> 2.0.3)
597
+ sprockets (= 3.7.2)
598
+ sprockets-rails (= 3.2.1)
599
+ timecop (~> 0.9)
600
+ uglifier (~> 3.2.0)
601
+ webpacker
602
+
603
+ BUNDLED WITH
604
+ 1.16.3