activeadmin 1.1.0 → 2.14.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of activeadmin might be problematic. Click here for more details.

Files changed (592) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +871 -111
  3. data/CODE_OF_CONDUCT.md +64 -12
  4. data/CONTRIBUTING.md +84 -63
  5. data/README.md +73 -19
  6. data/app/assets/javascripts/active_admin/base.js +521 -0
  7. data/app/assets/stylesheets/active_admin/_base.scss +53 -37
  8. data/app/assets/stylesheets/active_admin/_forms.scss +4 -26
  9. data/app/assets/stylesheets/active_admin/_header.scss +40 -8
  10. data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
  11. data/{vendor → app}/assets/stylesheets/active_admin/_normalize.scss +25 -123
  12. data/app/assets/stylesheets/active_admin/{print.scss → _print.scss} +2 -2
  13. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  14. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +1 -2
  15. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +0 -1
  16. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  17. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -5
  18. data/app/assets/stylesheets/active_admin/components/_tables.scss +1 -2
  19. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  20. data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -8
  21. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  22. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +17 -0
  23. data/app/assets/stylesheets/active_admin/structure/_footer.scss +6 -1
  24. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
  25. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -1
  26. data/app/javascript/active_admin/base.js +28 -0
  27. data/app/javascript/active_admin/ext/jquery-ui.js +7 -0
  28. data/app/javascript/active_admin/ext/jquery.js +9 -0
  29. data/app/javascript/active_admin/initializers/batch-actions.js +61 -0
  30. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  31. data/app/javascript/active_admin/initializers/datepicker.js +16 -0
  32. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  33. data/app/javascript/active_admin/initializers/filters.js +10 -0
  34. data/app/javascript/active_admin/initializers/has-many.js +98 -0
  35. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  36. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  37. data/app/javascript/active_admin/initializers/tabs.js +6 -0
  38. data/app/javascript/active_admin/lib/checkbox-toggler.js +49 -0
  39. data/app/javascript/active_admin/lib/dropdown-menu.js +116 -0
  40. data/app/javascript/active_admin/lib/filters.js +39 -0
  41. data/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  42. data/app/javascript/active_admin/lib/per-page.js +38 -0
  43. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  44. data/app/javascript/active_admin/lib/utils.js +40 -0
  45. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  46. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  47. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  48. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  49. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  50. data/app/views/active_admin/devise/registrations/new.html.erb +2 -3
  51. data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
  52. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  53. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  54. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  55. data/app/views/active_admin/page/index.html.arb +1 -0
  56. data/app/views/active_admin/resource/edit.html.arb +1 -0
  57. data/app/views/active_admin/resource/index.html.arb +1 -0
  58. data/app/views/active_admin/resource/new.html.arb +1 -0
  59. data/app/views/active_admin/resource/show.html.arb +1 -0
  60. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  61. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  62. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  63. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  64. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  65. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  66. data/app/views/layouts/active_admin.html.arb +1 -0
  67. data/app/views/layouts/active_admin_logged_out.html.erb +20 -9
  68. data/config/locales/ar.yml +9 -8
  69. data/config/locales/az.yml +138 -0
  70. data/config/locales/bg.yml +1 -1
  71. data/config/locales/bs.yml +1 -0
  72. data/config/locales/ca.yml +1 -1
  73. data/config/locales/cs.yml +1 -0
  74. data/config/locales/da.yml +1 -0
  75. data/config/locales/de-CH.yml +1 -0
  76. data/config/locales/de.yml +29 -0
  77. data/config/locales/el.yml +1 -0
  78. data/config/locales/en-CA.yml +4 -3
  79. data/config/locales/en-GB.yml +4 -3
  80. data/config/locales/en.yml +24 -4
  81. data/config/locales/eo.yml +145 -0
  82. data/config/locales/es-MX.yml +3 -1
  83. data/config/locales/es.yml +26 -6
  84. data/config/locales/fa.yml +1 -0
  85. data/config/locales/fi.yml +2 -1
  86. data/config/locales/fr.yml +9 -8
  87. data/config/locales/he.yml +1 -1
  88. data/config/locales/hr.yml +1 -0
  89. data/config/locales/hu.yml +5 -0
  90. data/config/locales/id.yml +1 -0
  91. data/config/locales/it.yml +31 -3
  92. data/config/locales/ja.yml +8 -2
  93. data/config/locales/ko.yml +2 -1
  94. data/config/locales/lt.yml +3 -2
  95. data/config/locales/lv.yml +3 -2
  96. data/config/locales/mk.yml +134 -0
  97. data/config/locales/nb.yml +16 -5
  98. data/config/locales/nl.yml +13 -1
  99. data/config/locales/pl.yml +72 -3
  100. data/config/locales/pt-BR.yml +9 -0
  101. data/config/locales/pt-PT.yml +1 -0
  102. data/config/locales/ro.yml +4 -2
  103. data/config/locales/ru.yml +3 -0
  104. data/config/locales/sk.yml +60 -0
  105. data/config/locales/sv-SE.yml +3 -0
  106. data/config/locales/tr.yml +10 -0
  107. data/config/locales/uk.yml +3 -0
  108. data/config/locales/vi.yml +82 -12
  109. data/config/locales/zh-CN.yml +68 -20
  110. data/config/locales/zh-TW.yml +1 -0
  111. data/lib/active_admin/abstract_view_factory.rb +14 -51
  112. data/lib/active_admin/application.rb +65 -172
  113. data/lib/active_admin/application_settings.rb +43 -0
  114. data/lib/active_admin/asset_registration.rb +4 -11
  115. data/lib/active_admin/authorization_adapter.rb +6 -3
  116. data/lib/active_admin/base_controller/authorization.rb +18 -18
  117. data/lib/active_admin/base_controller/menu.rb +1 -0
  118. data/lib/active_admin/base_controller.rb +12 -11
  119. data/lib/active_admin/batch_actions/controller.rb +6 -5
  120. data/lib/active_admin/batch_actions/resource_extension.rb +16 -10
  121. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  122. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  123. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  124. data/lib/active_admin/batch_actions.rb +1 -0
  125. data/lib/active_admin/callbacks.rb +2 -1
  126. data/lib/active_admin/cancan_adapter.rb +2 -1
  127. data/lib/active_admin/collection_decorator.rb +32 -0
  128. data/lib/active_admin/component.rb +1 -0
  129. data/lib/active_admin/controller_action.rb +3 -1
  130. data/lib/active_admin/csv_builder.rb +15 -21
  131. data/lib/active_admin/dependency.rb +12 -79
  132. data/lib/active_admin/deprecation.rb +1 -25
  133. data/lib/active_admin/devise.rb +16 -5
  134. data/lib/active_admin/dsl.rb +3 -9
  135. data/lib/active_admin/dynamic_setting.rb +39 -0
  136. data/lib/active_admin/dynamic_settings_node.rb +29 -0
  137. data/lib/active_admin/engine.rb +16 -7
  138. data/lib/active_admin/error.rb +5 -4
  139. data/lib/active_admin/filters/active.rb +2 -1
  140. data/lib/active_admin/filters/active_filter.rb +52 -15
  141. data/lib/active_admin/filters/active_sidebar.rb +8 -30
  142. data/lib/active_admin/filters/dsl.rb +1 -0
  143. data/lib/active_admin/filters/forms.rb +13 -9
  144. data/lib/active_admin/filters/formtastic_addons.rb +3 -7
  145. data/lib/active_admin/filters/resource_extension.rb +34 -9
  146. data/lib/active_admin/filters.rb +8 -7
  147. data/lib/active_admin/form_builder.rb +110 -70
  148. data/lib/active_admin/generators/boilerplate.rb +13 -4
  149. data/lib/active_admin/helpers/collection.rb +2 -0
  150. data/lib/active_admin/helpers/i18n.rb +1 -0
  151. data/lib/active_admin/helpers/optional_display.rb +3 -2
  152. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  153. data/lib/active_admin/helpers/scope_chain.rb +2 -0
  154. data/lib/active_admin/inputs/datepicker_input.rb +10 -2
  155. data/lib/active_admin/inputs/filters/base/search_method_select.rb +7 -6
  156. data/lib/active_admin/inputs/filters/base.rb +2 -1
  157. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  158. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  159. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  160. data/lib/active_admin/inputs/filters/date_range_input.rb +16 -12
  161. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  162. data/lib/active_admin/inputs/filters/select_input.rb +8 -3
  163. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  164. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  165. data/lib/active_admin/inputs.rb +1 -0
  166. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  167. data/lib/active_admin/localizers.rb +2 -1
  168. data/lib/active_admin/menu.rb +9 -11
  169. data/lib/active_admin/menu_collection.rb +1 -0
  170. data/lib/active_admin/menu_item.rb +11 -38
  171. data/lib/active_admin/namespace.rb +33 -20
  172. data/lib/active_admin/namespace_settings.rb +127 -0
  173. data/lib/active_admin/order_clause.rb +4 -3
  174. data/lib/active_admin/orm/active_record/comments/comment.rb +5 -4
  175. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  176. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  177. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  178. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +36 -25
  179. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  180. data/lib/active_admin/orm/active_record/comments.rb +41 -29
  181. data/lib/active_admin/orm/active_record.rb +2 -1
  182. data/lib/active_admin/orm/mongoid.rb +1 -0
  183. data/lib/active_admin/page.rb +2 -1
  184. data/lib/active_admin/page_controller.rb +1 -0
  185. data/lib/active_admin/page_dsl.rb +2 -1
  186. data/lib/active_admin/page_presenter.rb +3 -1
  187. data/lib/active_admin/pundit_adapter.rb +71 -16
  188. data/lib/active_admin/resource/action_items.rb +12 -6
  189. data/lib/active_admin/resource/attributes.rb +9 -5
  190. data/lib/active_admin/resource/belongs_to.rb +9 -3
  191. data/lib/active_admin/resource/controllers.rb +2 -1
  192. data/lib/active_admin/resource/includes.rb +1 -0
  193. data/lib/active_admin/resource/menu.rb +6 -5
  194. data/lib/active_admin/resource/model.rb +16 -0
  195. data/lib/active_admin/resource/naming.rb +6 -5
  196. data/lib/active_admin/resource/ordering.rb +1 -0
  197. data/lib/active_admin/resource/page_presenters.rb +1 -0
  198. data/lib/active_admin/resource/pagination.rb +1 -0
  199. data/lib/active_admin/resource/routes.rb +26 -14
  200. data/lib/active_admin/resource/scope_to.rb +8 -7
  201. data/lib/active_admin/resource/scopes.rb +4 -3
  202. data/lib/active_admin/resource/sidebars.rb +3 -2
  203. data/lib/active_admin/resource.rb +37 -22
  204. data/lib/active_admin/resource_collection.rb +3 -2
  205. data/lib/active_admin/resource_controller/action_builder.rb +11 -0
  206. data/lib/active_admin/resource_controller/data_access.rb +35 -5
  207. data/lib/active_admin/resource_controller/decorators.rb +10 -31
  208. data/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  209. data/lib/active_admin/resource_controller/resource_class_methods.rb +3 -0
  210. data/lib/active_admin/resource_controller/scoping.rb +2 -1
  211. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  212. data/lib/active_admin/resource_controller/streaming.rb +9 -7
  213. data/lib/active_admin/resource_controller.rb +14 -10
  214. data/lib/active_admin/resource_dsl.rb +17 -27
  215. data/lib/active_admin/router.rb +91 -84
  216. data/lib/active_admin/scope.rb +20 -11
  217. data/lib/active_admin/settings_node.rb +20 -0
  218. data/lib/active_admin/sidebar_section.rb +4 -1
  219. data/lib/active_admin/version.rb +2 -1
  220. data/lib/active_admin/view_factory.rb +18 -17
  221. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  222. data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -1
  223. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +6 -5
  224. data/lib/active_admin/view_helpers/display_helper.rb +25 -8
  225. data/lib/active_admin/view_helpers/download_format_links_helper.rb +3 -1
  226. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  227. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  228. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  229. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +4 -0
  230. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  231. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  232. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  233. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  234. data/lib/active_admin/view_helpers.rb +2 -1
  235. data/lib/active_admin/views/action_items.rb +1 -0
  236. data/lib/active_admin/views/components/active_admin_form.rb +14 -8
  237. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  238. data/lib/active_admin/views/components/attributes_table.rb +9 -8
  239. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  240. data/lib/active_admin/views/components/columns.rb +1 -0
  241. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  242. data/lib/active_admin/views/components/index_list.rb +4 -3
  243. data/lib/active_admin/views/components/menu.rb +33 -0
  244. data/lib/active_admin/views/components/menu_item.rb +59 -0
  245. data/lib/active_admin/views/components/paginated_collection.rb +22 -20
  246. data/lib/active_admin/views/components/panel.rb +2 -1
  247. data/lib/active_admin/views/components/scopes.rb +18 -8
  248. data/lib/active_admin/views/components/sidebar.rb +14 -0
  249. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  250. data/lib/active_admin/views/components/site_title.rb +7 -7
  251. data/lib/active_admin/views/components/status_tag.rb +14 -26
  252. data/lib/active_admin/views/components/table_for.rb +22 -29
  253. data/lib/active_admin/views/components/tabs.rb +18 -5
  254. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  255. data/lib/active_admin/views/footer.rb +6 -8
  256. data/lib/active_admin/views/header.rb +4 -15
  257. data/lib/active_admin/views/index_as_block.rb +1 -0
  258. data/lib/active_admin/views/index_as_blog.rb +3 -2
  259. data/lib/active_admin/views/index_as_grid.rb +27 -26
  260. data/lib/active_admin/views/index_as_table.rb +34 -25
  261. data/lib/active_admin/views/pages/base.rb +47 -62
  262. data/lib/active_admin/views/pages/form.rb +1 -0
  263. data/lib/active_admin/views/pages/index.rb +16 -13
  264. data/lib/active_admin/views/pages/layout.rb +1 -0
  265. data/lib/active_admin/views/pages/page.rb +1 -0
  266. data/lib/active_admin/views/pages/show.rb +1 -0
  267. data/lib/active_admin/views/tabbed_navigation.rb +5 -59
  268. data/lib/active_admin/views/title_bar.rb +2 -1
  269. data/lib/active_admin/views.rb +2 -1
  270. data/lib/active_admin.rb +68 -63
  271. data/lib/activeadmin.rb +2 -1
  272. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  273. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  274. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  275. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  276. data/lib/generators/active_admin/install/install_generator.rb +19 -8
  277. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +62 -3
  278. data/lib/generators/active_admin/install/templates/dashboard.rb +3 -3
  279. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  280. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  281. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  282. data/lib/generators/active_admin/resource/resource_generator.rb +5 -4
  283. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  284. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  285. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  286. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  287. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  288. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  289. data/lib/ransack_ext.rb +10 -9
  290. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  291. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  292. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  293. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  294. metadata +123 -595
  295. data/.github/ISSUE_TEMPLATE.md +0 -20
  296. data/.gitignore +0 -49
  297. data/.mdlrc +0 -1
  298. data/.rubocop.yml +0 -76
  299. data/.simplecov +0 -13
  300. data/.travis.yml +0 -51
  301. data/.yardopts +0 -7
  302. data/Gemfile +0 -58
  303. data/Rakefile +0 -54
  304. data/activeadmin.gemspec +0 -32
  305. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  306. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  307. data/app/assets/images/active_admin/orderable.png +0 -0
  308. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  309. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  310. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  311. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  312. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  313. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  314. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  315. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  316. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  317. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  318. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  319. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  320. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  321. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  322. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  323. data/codecov.yml +0 -25
  324. data/config/i18n-tasks.yml +0 -26
  325. data/config/mdl_style.rb +0 -9
  326. data/cucumber.yml +0 -3
  327. data/docs/0-installation.md +0 -118
  328. data/docs/1-general-configuration.md +0 -189
  329. data/docs/10-custom-pages.md +0 -136
  330. data/docs/11-decorators.md +0 -59
  331. data/docs/12-arbre-components.md +0 -174
  332. data/docs/13-authorization-adapter.md +0 -266
  333. data/docs/14-gotchas.md +0 -138
  334. data/docs/2-resource-customization.md +0 -461
  335. data/docs/3-index-pages/custom-index.md +0 -35
  336. data/docs/3-index-pages/index-as-block.md +0 -19
  337. data/docs/3-index-pages/index-as-blog.md +0 -69
  338. data/docs/3-index-pages/index-as-grid.md +0 -27
  339. data/docs/3-index-pages/index-as-table.md +0 -227
  340. data/docs/3-index-pages.md +0 -311
  341. data/docs/4-csv-format.md +0 -74
  342. data/docs/5-forms.md +0 -218
  343. data/docs/6-show-pages.md +0 -81
  344. data/docs/7-sidebars.md +0 -75
  345. data/docs/8-custom-actions.md +0 -166
  346. data/docs/9-batch-actions.md +0 -237
  347. data/docs/CNAME +0 -1
  348. data/docs/Gemfile +0 -2
  349. data/docs/README.md +0 -24
  350. data/docs/_config.yml +0 -2
  351. data/docs/_includes/footer.html +0 -8
  352. data/docs/_includes/google-analytics.html +0 -16
  353. data/docs/_includes/head.html +0 -7
  354. data/docs/_includes/toc.html +0 -98
  355. data/docs/_includes/top-menu.html +0 -9
  356. data/docs/_layouts/default.html +0 -21
  357. data/docs/documentation.md +0 -60
  358. data/docs/images/activeadmin.png +0 -0
  359. data/docs/images/code-header.png +0 -0
  360. data/docs/images/divider.png +0 -0
  361. data/docs/images/features.png +0 -0
  362. data/docs/index.html +0 -125
  363. data/docs/stylesheets/main.css +0 -1152
  364. data/features/action_item.feature +0 -73
  365. data/features/authorization.feature +0 -64
  366. data/features/authorization_cancan.feature +0 -52
  367. data/features/authorization_pundit.feature +0 -37
  368. data/features/belongs_to.feature +0 -124
  369. data/features/breadcrumb.feature +0 -75
  370. data/features/comments/commenting.feature +0 -178
  371. data/features/comments/viewing_index.feature +0 -19
  372. data/features/create_another.feature +0 -55
  373. data/features/dashboard.feature +0 -16
  374. data/features/decorators.feature +0 -43
  375. data/features/development_reloading.feature +0 -28
  376. data/features/edit_page.feature +0 -116
  377. data/features/favicon.feature +0 -20
  378. data/features/first_boot.feature +0 -16
  379. data/features/footer.feature +0 -28
  380. data/features/global_navigation.feature +0 -29
  381. data/features/i18n.feature +0 -55
  382. data/features/index/batch_actions.feature +0 -218
  383. data/features/index/filters.feature +0 -239
  384. data/features/index/format_as_csv.feature +0 -220
  385. data/features/index/formats.feature +0 -88
  386. data/features/index/index_as_block.feature +0 -15
  387. data/features/index/index_as_blog.feature +0 -69
  388. data/features/index/index_as_grid.feature +0 -45
  389. data/features/index/index_as_table.feature +0 -291
  390. data/features/index/index_blank_slate.feature +0 -83
  391. data/features/index/index_parameters.feature +0 -75
  392. data/features/index/index_scope_to.feature +0 -56
  393. data/features/index/index_scopes.feature +0 -285
  394. data/features/index/page_title.feature +0 -41
  395. data/features/index/pagination.feature +0 -63
  396. data/features/index/switch_index_view.feature +0 -73
  397. data/features/menu.feature +0 -72
  398. data/features/meta_tags.feature +0 -21
  399. data/features/new_page.feature +0 -107
  400. data/features/registering_assets.feature +0 -38
  401. data/features/registering_pages.feature +0 -237
  402. data/features/registering_resources.feature +0 -33
  403. data/features/renamed_resource.feature +0 -30
  404. data/features/root_to.feature +0 -17
  405. data/features/show/attributes_table_title.feature +0 -54
  406. data/features/show/columns.feature +0 -40
  407. data/features/show/default_content.feature +0 -44
  408. data/features/show/page_title.feature +0 -58
  409. data/features/show/tabs.feature +0 -33
  410. data/features/sidebar_sections.feature +0 -210
  411. data/features/site_title.feature +0 -47
  412. data/features/specifying_actions.feature +0 -118
  413. data/features/step_definitions/action_item_steps.rb +0 -7
  414. data/features/step_definitions/action_link_steps.rb +0 -19
  415. data/features/step_definitions/additional_web_steps.rb +0 -81
  416. data/features/step_definitions/asset_steps.rb +0 -15
  417. data/features/step_definitions/attribute_steps.rb +0 -18
  418. data/features/step_definitions/attributes_table_title_steps.rb +0 -11
  419. data/features/step_definitions/batch_action_steps.rb +0 -81
  420. data/features/step_definitions/blog_steps.rb +0 -3
  421. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  422. data/features/step_definitions/column_steps.rb +0 -8
  423. data/features/step_definitions/comment_steps.rb +0 -32
  424. data/features/step_definitions/configuration_steps.rb +0 -100
  425. data/features/step_definitions/dashboard_steps.rb +0 -15
  426. data/features/step_definitions/factory_steps.rb +0 -35
  427. data/features/step_definitions/filter_steps.rb +0 -48
  428. data/features/step_definitions/flash_steps.rb +0 -11
  429. data/features/step_definitions/footer_steps.rb +0 -11
  430. data/features/step_definitions/format_steps.rb +0 -56
  431. data/features/step_definitions/i18n_steps.rb +0 -11
  432. data/features/step_definitions/index_scope_steps.rb +0 -29
  433. data/features/step_definitions/index_views_steps.rb +0 -3
  434. data/features/step_definitions/layout_steps.rb +0 -3
  435. data/features/step_definitions/member_link_steps.rb +0 -7
  436. data/features/step_definitions/menu_steps.rb +0 -11
  437. data/features/step_definitions/meta_tag_steps.rb +0 -3
  438. data/features/step_definitions/pagination_steps.rb +0 -15
  439. data/features/step_definitions/sidebar_steps.rb +0 -11
  440. data/features/step_definitions/site_title_steps.rb +0 -17
  441. data/features/step_definitions/tab_steps.rb +0 -8
  442. data/features/step_definitions/table_steps.rb +0 -116
  443. data/features/step_definitions/user_steps.rb +0 -52
  444. data/features/step_definitions/web_steps.rb +0 -86
  445. data/features/sti_resource.feature +0 -65
  446. data/features/strong_parameters.feature +0 -69
  447. data/features/support/env.rb +0 -122
  448. data/features/support/paths.rb +0 -73
  449. data/features/support/regular_env.rb +0 -7
  450. data/features/support/reload_env.rb +0 -7
  451. data/features/support/selectors.rb +0 -45
  452. data/features/users/logging_in.feature +0 -36
  453. data/features/users/logging_out.feature +0 -13
  454. data/features/users/resetting_password.feature +0 -34
  455. data/gemfiles/rails_42.gemfile +0 -10
  456. data/gemfiles/rails_50.gemfile +0 -10
  457. data/gemfiles/rails_51.gemfile +0 -10
  458. data/lib/active_admin/event.rb +0 -24
  459. data/lib/active_admin/helpers/settings.rb +0 -114
  460. data/lib/active_admin/reloader.rb +0 -25
  461. data/lib/bug_report_templates/active_admin_master.rb +0 -113
  462. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  463. data/spec/bug_report_templates_spec.rb +0 -26
  464. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  465. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  466. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  467. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  468. data/spec/javascripts/fixtures/flashes.html +0 -2
  469. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  470. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  471. data/spec/javascripts/support/jasmine.yml +0 -74
  472. data/spec/javascripts/support/jasmine_runner.rb +0 -19
  473. data/spec/rails_helper.rb +0 -59
  474. data/spec/requests/default_namespace_spec.rb +0 -81
  475. data/spec/requests/memory_spec.rb +0 -25
  476. data/spec/requests/stylesheets_spec.rb +0 -18
  477. data/spec/spec_helper.rb +0 -1
  478. data/spec/support/active_admin_integration_spec_helper.rb +0 -73
  479. data/spec/support/active_admin_request_helpers.rb +0 -39
  480. data/spec/support/rails_template.rb +0 -150
  481. data/spec/support/rails_template_with_data.rb +0 -327
  482. data/spec/support/templates/admin/stores.rb +0 -7
  483. data/spec/support/templates/en.yml +0 -8
  484. data/spec/support/templates/manifest.js +0 -3
  485. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  486. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  487. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  488. data/spec/support/templates/policies/application_policy.rb +0 -44
  489. data/spec/support/templates/policies/category_policy.rb +0 -7
  490. data/spec/support/templates/policies/post_policy.rb +0 -15
  491. data/spec/support/templates/policies/store_policy.rb +0 -11
  492. data/spec/support/templates/policies/user_policy.rb +0 -11
  493. data/spec/support/templates/post_decorator.rb +0 -10
  494. data/spec/unit/abstract_view_factory_spec.rb +0 -78
  495. data/spec/unit/action_builder_spec.rb +0 -125
  496. data/spec/unit/active_admin_spec.rb +0 -11
  497. data/spec/unit/application_spec.rb +0 -184
  498. data/spec/unit/asset_registration_spec.rb +0 -81
  499. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  500. data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
  501. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  502. data/spec/unit/auto_link_spec.rb +0 -93
  503. data/spec/unit/batch_actions/resource_spec.rb +0 -84
  504. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  505. data/spec/unit/belongs_to_spec.rb +0 -76
  506. data/spec/unit/cancan_adapter_spec.rb +0 -43
  507. data/spec/unit/comments_spec.rb +0 -176
  508. data/spec/unit/component_spec.rb +0 -18
  509. data/spec/unit/config_shared_examples.rb +0 -59
  510. data/spec/unit/controller_filters_spec.rb +0 -41
  511. data/spec/unit/csv_builder_spec.rb +0 -304
  512. data/spec/unit/dependency_spec.rb +0 -135
  513. data/spec/unit/devise_spec.rb +0 -110
  514. data/spec/unit/dsl_spec.rb +0 -120
  515. data/spec/unit/filters/active_filter_spec.rb +0 -135
  516. data/spec/unit/filters/active_spec.rb +0 -24
  517. data/spec/unit/filters/filter_form_builder_spec.rb +0 -502
  518. data/spec/unit/filters/resource_spec.rb +0 -128
  519. data/spec/unit/form_builder_spec.rb +0 -990
  520. data/spec/unit/generators/install_spec.rb +0 -31
  521. data/spec/unit/helpers/collection_spec.rb +0 -68
  522. data/spec/unit/helpers/scope_chain_spec.rb +0 -35
  523. data/spec/unit/helpers/settings_spec.rb +0 -30
  524. data/spec/unit/i18n_spec.rb +0 -29
  525. data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
  526. data/spec/unit/menu_collection_spec.rb +0 -62
  527. data/spec/unit/menu_item_spec.rb +0 -141
  528. data/spec/unit/menu_spec.rb +0 -71
  529. data/spec/unit/namespace/authorization_spec.rb +0 -27
  530. data/spec/unit/namespace/register_page_spec.rb +0 -99
  531. data/spec/unit/namespace/register_resource_spec.rb +0 -162
  532. data/spec/unit/namespace_spec.rb +0 -124
  533. data/spec/unit/order_clause_spec.rb +0 -81
  534. data/spec/unit/page_controller_spec.rb +0 -5
  535. data/spec/unit/page_spec.rb +0 -128
  536. data/spec/unit/pretty_format_spec.rb +0 -82
  537. data/spec/unit/pundit_adapter_spec.rb +0 -98
  538. data/spec/unit/resource/action_items_spec.rb +0 -69
  539. data/spec/unit/resource/attributes_spec.rb +0 -49
  540. data/spec/unit/resource/includes_spec.rb +0 -21
  541. data/spec/unit/resource/menu_spec.rb +0 -18
  542. data/spec/unit/resource/naming_spec.rb +0 -122
  543. data/spec/unit/resource/ordering_spec.rb +0 -35
  544. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  545. data/spec/unit/resource/pagination_spec.rb +0 -38
  546. data/spec/unit/resource/routes_spec.rb +0 -125
  547. data/spec/unit/resource/scopes_spec.rb +0 -50
  548. data/spec/unit/resource/sidebars_spec.rb +0 -43
  549. data/spec/unit/resource_collection_spec.rb +0 -175
  550. data/spec/unit/resource_controller/data_access_spec.rb +0 -230
  551. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  552. data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
  553. data/spec/unit/resource_controller_spec.rb +0 -273
  554. data/spec/unit/resource_registration_spec.rb +0 -61
  555. data/spec/unit/resource_spec.rb +0 -320
  556. data/spec/unit/routing_spec.rb +0 -211
  557. data/spec/unit/scope_spec.rb +0 -209
  558. data/spec/unit/settings_spec.rb +0 -117
  559. data/spec/unit/view_factory_spec.rb +0 -19
  560. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -252
  561. data/spec/unit/view_helpers/display_helper_spec.rb +0 -195
  562. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  563. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  564. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
  565. data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
  566. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
  567. data/spec/unit/views/components/attributes_table_spec.rb +0 -271
  568. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  569. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  570. data/spec/unit/views/components/columns_spec.rb +0 -187
  571. data/spec/unit/views/components/index_list_spec.rb +0 -49
  572. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  573. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  574. data/spec/unit/views/components/panel_spec.rb +0 -58
  575. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  576. data/spec/unit/views/components/site_title_spec.rb +0 -76
  577. data/spec/unit/views/components/status_tag_spec.rb +0 -265
  578. data/spec/unit/views/components/table_for_spec.rb +0 -436
  579. data/spec/unit/views/components/tabs_spec.rb +0 -67
  580. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  581. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  582. data/spec/unit/views/pages/form_spec.rb +0 -54
  583. data/spec/unit/views/pages/index_spec.rb +0 -60
  584. data/spec/unit/views/pages/layout_spec.rb +0 -59
  585. data/spec/unit/views/pages/show_spec.rb +0 -32
  586. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  587. data/tasks/docs.rake +0 -64
  588. data/tasks/lint.rake +0 -21
  589. data/tasks/local.rake +0 -25
  590. data/tasks/parallel_tests.rake +0 -66
  591. data/tasks/test.rake +0 -29
  592. /data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +0 -0
@@ -1,67 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::Tabs do
4
- describe "creating with the dsl" do
5
- context "when creating tabs with a symbol" do
6
- before do
7
- expect(I18n).to receive(:t).at_least(:once).with(:tab_key).and_return "テスト"
8
- end
9
-
10
- let(:tabs) do
11
- render_arbre_component do
12
- tabs do
13
- tab :overview
14
- tab I18n.t(:tab_key), { id: :something_unique }
15
- end
16
- end
17
- end
18
-
19
- let(:subject) { Capybara.string(tabs.to_s) }
20
-
21
- it "should create a tab navigation bar based on the symbol" do
22
- expect(subject).to have_content('Overview')
23
- end
24
-
25
- it "should have tab with id based on symbol" do
26
- expect(subject).to have_selector('div#overview')
27
- end
28
-
29
- it "should have link with fragment based on symbol" do
30
- expect(subject).to have_selector('a[href="#overview"]')
31
- end
32
-
33
- it "should handle translation" do
34
- expect(subject).to have_content('テスト')
35
- end
36
-
37
- it "should have tab with id based on options" do
38
- expect(subject).to have_selector('div#something_unique')
39
- end
40
-
41
- it "should have link with fragment based on options" do
42
- expect(subject).to have_selector('a[href="#something_unique"]')
43
- end
44
-
45
- end
46
-
47
- context "when creating a tab with a block" do
48
- let(:tabs) do
49
- render_arbre_component do
50
- tabs do
51
- tab :overview do
52
- span 'tab 1'
53
- end
54
- end
55
- end
56
- end
57
-
58
- it "should create a tab navigation bar based on the symbol" do
59
- expect(tabs.find_by_tag('li').first.content).to include "Overview"
60
- end
61
-
62
- it "should create a tab with a span inside of it" do
63
- expect(tabs.find_by_tag('span').first.content).to eq('tab 1')
64
- end
65
- end
66
- end
67
- end
@@ -1,41 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::UnsupportedBrowser do
4
- let(:helpers){ mock_action_view }
5
- let(:namespace) { double :namespace, unsupported_browser_matcher: /MSIE [1-8]\.0/ }
6
- let(:component) { double :unsupported_browser_component }
7
- let(:view_factory) { double :view_factory, unsupported_browser: component }
8
- let(:base) { ActiveAdmin::Views::Pages::Base.new }
9
-
10
- def build_panel
11
- render_arbre_component({}, helpers) do
12
- insert_tag ActiveAdmin::Views::UnsupportedBrowser
13
- end
14
- end
15
-
16
- it "should render the panel" do
17
- expect(I18n).to receive(:t).and_return("headline", "recommendation" , "turn_off_compatibility_view")
18
- expect(build_panel.content.gsub(/\s+/, "")).to eq "<h1>headline</h1><p>recommendation</p><p>turn_off_compatibility_view</p>"
19
- end
20
-
21
- describe "ActiveAdmin::Views::Pages::Base behavior" do
22
- context "when the reqex match" do
23
- it "should build the unsupported browser panel" do
24
- expect(base).to receive(:active_admin_namespace).and_return(namespace)
25
- expect(base).to receive_message_chain(:controller, :request, :user_agent).and_return("Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.2; Trident/6.0)")
26
- expect(base).to receive(:view_factory).and_return(view_factory)
27
- expect(base).to receive(:insert_tag).with(component)
28
- base.send(:build_unsupported_browser)
29
- end
30
- end
31
-
32
- context "when the regex not match" do
33
- it "should not build the unsupported browser panel" do
34
- expect(base).to receive(:active_admin_namespace).and_return(namespace)
35
- expect(base).to receive_message_chain(:controller, :request, :user_agent).and_return("Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)")
36
- expect(base).to receive(:insert_tag).never
37
- base.send(:build_unsupported_browser)
38
- end
39
- end
40
- end
41
- end
@@ -1,76 +0,0 @@
1
- require 'rails_helper'
2
-
3
- include ActiveAdmin
4
- RSpec.describe ActiveAdmin::Views::IndexAsBlog do
5
- subject { described_class.new }
6
-
7
- describe '#build' do
8
- let(:page_presenter) { double('page_presenter', block: nil) }
9
- let(:collection) { double('collection') }
10
-
11
- before do
12
- expect(subject).to receive('build_posts')
13
- expect(subject).to receive('add_class').with('index')
14
- end
15
-
16
- context 'when page_presenter has no block' do
17
- before do
18
- subject.build(page_presenter, collection)
19
- end
20
-
21
- it do
22
- expect(subject.instance_variable_get(:@page_presenter))
23
- .to eq(page_presenter)
24
- expect(subject.instance_variable_get(:@collection)).to eq(collection)
25
- end
26
- end
27
-
28
- context 'when page_presenter has block' do
29
- let(:block) { Proc.new { double('proc_method') } }
30
-
31
- before do
32
- allow(page_presenter).to receive(:block).and_return(block)
33
- allow(subject).to receive('instance_exec')
34
- subject.build(page_presenter, collection)
35
- end
36
-
37
- it do
38
- expect(subject).to have_received('instance_exec')
39
- end
40
- end
41
- end
42
-
43
- %w(title body).each do |method|
44
- describe "#{method}" do
45
- context 'when block given' do
46
- let(:block_result) { double('block_result') }
47
-
48
- it "should use the block to set the #{method}" do
49
- expect(
50
- subject.public_send("#{method}") do
51
- block_result
52
- end.yield
53
- ).to eq(block_result)
54
- end
55
- end
56
-
57
- context 'when no block and method given' do
58
- let(:method) { double('method') }
59
-
60
- it "should use method to set the #{method}" do
61
- expect(subject.public_send("#{method}", method)).to eq(method)
62
- end
63
- end
64
-
65
- context 'when no block and no method given' do
66
- it 'should be nil' do
67
- expect(subject.public_send("#{method}")).to eq(nil)
68
- end
69
- end
70
- end
71
- end
72
-
73
- describe '.index_name' do
74
- it { expect(described_class.index_name).to eq('blog') }
75
- end
76
- end
@@ -1,54 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::Pages::Form do
4
- describe "#title" do
5
- let!(:application){ ActiveAdmin::Application.new }
6
- let(:namespace){ ActiveAdmin::Namespace.new(application, "Admin") }
7
- let!(:http_params){ { controller: "UsersController", action: "edit" } }
8
- let!(:params) { ActionController::Parameters.new(http_params) }
9
-
10
- let(:helpers) do
11
- helpers = mock_action_view
12
- allow(helpers).to receive(:active_admin_config).and_return(namespace.register(Post))
13
- allow(helpers).to receive(:params).and_return(params)
14
- helpers
15
- end
16
-
17
- let(:arbre_context) do
18
- OpenStruct.new(params: params, helpers: helpers, assigns: {})
19
- end
20
-
21
- context "when :title is set" do
22
- it "should show the set page title" do
23
-
24
- page = ActiveAdmin::Views::Pages::Form.new(arbre_context)
25
- expect(page).to receive(:resource)
26
- expect(page).to receive(:form_presenter).twice.and_return({ title: "My Page Title" })
27
- expect(page.title).to eq "My Page Title"
28
- end
29
- end
30
-
31
- context "when page_title is assigned" do
32
- it "should show the set page title" do
33
- arbre_context.assigns[:page_title] = "My Page Title"
34
- page = ActiveAdmin::Views::Pages::Form.new(arbre_context)
35
- expect(page.title).to eq "My Page Title"
36
- end
37
- end
38
-
39
- context "when page_title is not assigned" do
40
- {
41
- "new" => "New Post",
42
- "create" => "New Post",
43
- "edit" => "Edit Post",
44
- "update" => "Edit Post"
45
- }.each do |action, title|
46
- it "should show the correct I18n text on the #{action} action" do
47
- params[:action] = action
48
- page = ActiveAdmin::Views::Pages::Form.new(arbre_context)
49
- expect(page.title).to eq title
50
- end
51
- end
52
- end
53
- end
54
- end
@@ -1,60 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::Pages::Index do
4
- describe "#title" do
5
- let!(:application){ ActiveAdmin::Application.new }
6
- let(:namespace){ ActiveAdmin::Namespace.new(application, "Admin") }
7
- let!(:params){ ActionController::Parameters.new(controller: "UsersController", action: "edit") }
8
- let(:helpers) do
9
- helpers = mock_action_view
10
- allow(helpers).to receive(:active_admin_config).and_return(namespace.register(Post))
11
- allow(helpers).to receive(:params).and_return(params)
12
- helpers
13
- end
14
-
15
- let(:arbre_context) do
16
- OpenStruct.new(params: params, helpers: helpers, assigns: {})
17
- end
18
-
19
- context "when config[:title] is assigned" do
20
- context "with a Proc" do
21
- it "should return the value of the assigned Proc" do
22
- page = ActiveAdmin::Views::Pages::Index.new(arbre_context)
23
- allow(page).to receive(:config).and_return(title: ->{ "My Page Title" })
24
- expect(page.title).to eq "My Page Title"
25
- end
26
- end
27
-
28
- context "with a String" do
29
- it "should return the assigned String" do
30
- page = ActiveAdmin::Views::Pages::Index.new(arbre_context)
31
- allow(page).to receive(:config).and_return(title: ->{ "My Page Title" })
32
- expect(page.title).to eq "My Page Title"
33
- end
34
- end
35
-
36
- context "with a Integer" do
37
- it "should return the Integer" do
38
- page = ActiveAdmin::Views::Pages::Index.new(arbre_context)
39
- allow(page).to receive(:config).and_return(title: 1)
40
- expect(page.title).to eq 1
41
- end
42
- end
43
- end
44
-
45
- context "when page_title is assigned" do
46
- it "should return the set page title" do
47
- arbre_context.assigns[:page_title] = "My Page Title"
48
- page = ActiveAdmin::Views::Pages::Index.new(arbre_context)
49
- expect(page.title).to eq "My Page Title"
50
- end
51
- end
52
-
53
- context "when page_title is not assigned" do
54
- it "should return the correct I18n text" do
55
- page = ActiveAdmin::Views::Pages::Index.new(arbre_context)
56
- expect(page.title).to eq "Posts"
57
- end
58
- end
59
- end
60
- end
@@ -1,59 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::Pages::Layout do
4
-
5
- let(:assigns){ {} }
6
- let(:helpers) do
7
- helpers = mock_action_view
8
-
9
- { active_admin_application: active_admin_application,
10
- active_admin_config: double('Config', action_items?: nil, breadcrumb: nil, sidebar_sections?: nil),
11
- active_admin_namespace: active_admin_namespace,
12
- csrf_meta_tag: '',
13
- current_active_admin_user: nil,
14
- current_active_admin_user?: false,
15
- current_menu: double('Menu', items: []),
16
- params: {controller: 'UsersController', action: 'edit'},
17
- env: {}
18
- }.each do |method, returns|
19
- allow(helpers).to receive(method).and_return returns
20
- end
21
-
22
- helpers
23
- end
24
-
25
- let(:active_admin_namespace){ ActiveAdmin::Namespace.new(ActiveAdmin::Application.new, :myspace) }
26
- let(:active_admin_application){ ActiveAdmin.application }
27
- let(:view_factory) { ActiveAdmin::ViewFactory.new }
28
-
29
- let(:layout) do
30
- render_arbre_component assigns, helpers do
31
- insert_tag ActiveAdmin::Views::Pages::Layout
32
- end
33
- end
34
-
35
- it "should be the @page_title if assigned in the controller" do
36
- assigns[:page_title] = "My Page Title"
37
-
38
- expect(layout.title).to eq "My Page Title"
39
- end
40
-
41
- it "should be the default translation" do
42
- helpers.params[:action] = "edit"
43
-
44
- expect(layout.title).to eq "Edit"
45
- end
46
-
47
- describe "the body" do
48
-
49
- it "should have class 'active_admin'" do
50
- expect(layout.build.class_list).to include 'active_admin'
51
- end
52
-
53
- it "should have namespace class" do
54
- expect(layout.build.class_list).to include "#{active_admin_namespace.name}_namespace"
55
- end
56
-
57
- end
58
-
59
- end
@@ -1,32 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::Pages::Show do
4
-
5
- describe "the resource" do
6
- let(:helpers) { double resource: resource }
7
- let(:arbre_context) { Arbre::Context.new({}, helpers) }
8
- subject(:page) { ActiveAdmin::Views::Pages::Show.new(arbre_context) }
9
-
10
- context 'when the resource does not respond to #decorator' do
11
- let(:resource) { 'Test Resource' }
12
-
13
- it "normally returns the resource" do
14
- expect(page.resource).to eq 'Test Resource'
15
- end
16
- end
17
-
18
- context 'when you pass a block to main content' do
19
- let(:block) { lambda { } }
20
- let(:resource) { double('resource') }
21
-
22
- before { allow(page).to receive(:active_admin_config).and_return(double(comments?: false, resource_columns: [:field]))}
23
-
24
- it 'appends it to the output' do
25
- expect(page).to receive(:attributes_table).with(:field).and_yield
26
- page.default_main_content(&block)
27
- end
28
- end
29
-
30
- end
31
-
32
- end
@@ -1,158 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Views::TabbedNavigation do
4
-
5
- let(:menu){ ActiveAdmin::Menu.new }
6
-
7
- let(:assigns){ { active_admin_menu: menu } }
8
- let(:helpers){ mock_action_view }
9
-
10
- let(:tabbed_navigation) do
11
- arbre(assigns, helpers) {
12
- insert_tag(ActiveAdmin::Views::TabbedNavigation, active_admin_menu)
13
- }.children.first
14
- end
15
-
16
- let(:html) { Capybara.string(tabbed_navigation.to_s) }
17
-
18
- before do
19
- load_resources { ActiveAdmin.register Post }
20
- allow(helpers).to receive(:admin_logged_in?).and_return(false)
21
- end
22
-
23
- describe "rendering a menu" do
24
-
25
- before do
26
- menu.add label: "Blog Posts", url: :admin_posts_path
27
-
28
- menu.add label: "Reports", url: "/admin/reports" do |reports|
29
- reports.add label: "A Sub Reports", url: "/admin/a-sub-reports"
30
- reports.add label: "B Sub Reports", url: "/admin/b-sub-reports"
31
- reports.add label: proc{ "Label Proc Sub Reports" }, url: "/admin/label-proc-sub-reports", id: "Label Proc Sub Reports"
32
- end
33
-
34
- menu.add label: "Administration", url: "/admin/administration" do |administration|
35
- administration.add label: "User administration",
36
- url: '/admin/user-administration',
37
- priority: 10,
38
- if: proc { false }
39
- end
40
-
41
- menu.add label: "Management", url: "#" do |management|
42
- management.add label: "Order management",
43
- url: '/admin/order-management',
44
- priority: 10,
45
- if: proc { false }
46
- management.add label: "Bill management",
47
- url: '/admin/bill-management',
48
- priority: 10,
49
- if: :admin_logged_in?
50
- end
51
-
52
- menu.add label: "Charles Smith", id: "current_user", url: -> { nil }
53
- end
54
-
55
- it "should generate a ul" do
56
- expect(html).to have_selector("ul")
57
- end
58
-
59
- it "should generate an li for each item" do
60
- expect(html).to have_selector("ul > li")
61
- end
62
-
63
- it "should generate a link for each item" do
64
- expect(html).to have_selector("a[href='/admin/posts']", text: "Blog Posts")
65
- end
66
-
67
- it "should generate a nested list for children" do
68
- expect(html).to have_selector("li > ul")
69
- end
70
-
71
- it "should generate a nested list with li for each child" do
72
- expect(html).to have_selector("ul > li#a_sub_reports")
73
- expect(html).to have_selector("ul > li#b_sub_reports")
74
- end
75
-
76
- it "should generate a valid id from a label proc" do
77
- expect(html).to have_selector("ul > li#label_proc_sub_reports")
78
- end
79
-
80
- it "should not generate a link for user administration" do
81
- expect(html).to_not have_selector("a[href='/admin/user-administration']", text: "User administration")
82
- end
83
-
84
- it "should generate the administration parent menu" do
85
- expect(html).to have_selector("a[href='/admin/administration']", text: "Administration")
86
- end
87
-
88
- it "should not generate a link for order management" do
89
- expect(html).to_not have_selector("a[href='/admin/order-management']", text: "Order management")
90
- end
91
-
92
- it "should not generate a link for bill management" do
93
- expect(html).to_not have_selector("a[href='/admin/bill-management']", text: "Bill management")
94
- end
95
-
96
- it "should not generate the management parent menu" do
97
- expect(html).to_not have_selector("a[href='#']", text: "Management")
98
- end
99
-
100
- context "when url is nil" do
101
- it "should generate a span" do
102
- selector = "li#current_user > span"
103
- expect(html).to have_selector(selector, text: "Charles Smith")
104
- end
105
- end
106
-
107
- describe "marking current item" do
108
-
109
- it "should add the 'current' class to the li" do
110
- assigns[:current_tab] = menu["Blog Posts"]
111
- expect(html).to have_selector("li.current")
112
- end
113
-
114
- it "should add the 'current' and 'has_nested' classes to the li and 'current' to the sub li" do
115
- assigns[:current_tab] = menu["Reports"]["A Sub Reports"]
116
- expect(html).to have_selector("li#reports.current")
117
- expect(html).to have_selector("li#reports.has_nested")
118
- expect(html).to have_selector("li#a_sub_reports.current")
119
- end
120
-
121
- end
122
-
123
- end
124
-
125
- describe "returning the menu items to display" do
126
-
127
- it "should return one item with no if block" do
128
- menu.add label: "Hello World", url: "/"
129
- expect(tabbed_navigation.menu_items).to eq menu.items
130
- end
131
-
132
- it "should not include menu items with an if block that returns false" do
133
- menu.add label: "Don't Show", url: "/", priority: 10, if: proc{ false }
134
- expect(tabbed_navigation.menu_items).to be_empty
135
- end
136
-
137
- it "should not include menu items with an if block that calls a method that returns false" do
138
- menu.add label: "Don't Show", url: "/", priority: 10, if: :admin_logged_in?
139
- expect(tabbed_navigation.menu_items).to be_empty
140
- end
141
-
142
- it "should not display any items that have no children to display" do
143
- menu.add label: "Parent", url: "#" do |p|
144
- p.add label: "Child", url: "/", priority: 10, if: proc{ false }
145
- end
146
- expect(tabbed_navigation.menu_items).to be_empty
147
- end
148
-
149
- it "should display a parent that has a child to display" do
150
- menu.add label: "Parent", url: "#" do |p|
151
- p.add label: "Hidden Child", url: "/", priority: 10, if: proc{ false }
152
- p.add label: "Child", url: "/"
153
- end
154
- expect(tabbed_navigation.menu_items.size).to eq(1)
155
- end
156
-
157
- end
158
- end
data/tasks/docs.rake DELETED
@@ -1,64 +0,0 @@
1
- require 'yard'
2
- require 'yard/rake/yardoc_task'
3
-
4
- namespace :docs do
5
-
6
- YARD::Rake::YardocTask.new do |t|
7
- t.files = ['lib/**/*.rb']
8
- t.options = ['--no-output']
9
- end
10
-
11
- def jekyll_redirect_string(filename)
12
- <<-EOD.strip_heredoc
13
- ---
14
- redirect_from: /docs/3-index-pages/#{filename}
15
- ---
16
-
17
- EOD
18
- end
19
-
20
- def filename_from_module(mod)
21
- mod.name.to_s.underscore.tr('_', '-')
22
- end
23
-
24
- def write_docstrings_to(path, mods)
25
- mods.each do |mod|
26
- filename = filename_from_module(mod)
27
-
28
- File.open("#{path}/#{filename}.md", 'w+') do |f|
29
- f << jekyll_redirect_string("#{filename}.html") + mod.docstring + "\n"
30
- end
31
- end
32
- end
33
-
34
- def docs_syncronized?
35
- # Do not print diff and yield whether exit code was zero
36
- sh('git diff --quiet docs/3-index-pages') do |outcome, _|
37
- return if outcome
38
-
39
- # Output diff before raising error
40
- sh('git diff docs/3-index-pages')
41
-
42
- raise <<-MSG.strip_heredoc
43
- The docs/3-index-pages directory is out of sync.
44
- Run rake generate_cops_documentation and commit the results.
45
- MSG
46
- end
47
- end
48
-
49
- desc "Update docs in the docs folder"
50
- task build: :yard do
51
- require 'yard'
52
- require 'active_support/all'
53
-
54
- YARD::Registry.load!
55
- views = YARD::Registry.at("ActiveAdmin::Views")
56
-
57
- # Index Types
58
- index_types = views.children.select{|obj| obj.name.to_s =~ /^IndexAs/ }
59
- write_docstrings_to "docs/3-index-pages", index_types
60
-
61
- docs_syncronized? if ENV["CI"]
62
- end
63
-
64
- end
data/tasks/lint.rake DELETED
@@ -1,21 +0,0 @@
1
- desc "Lints ActiveAdmin code base"
2
- task lint: ["lint:rubocop", "lint:mdl"]
3
-
4
- namespace :lint do
5
- require "rubocop/rake_task"
6
- desc "Checks ruby code style with RuboCop"
7
- RuboCop::RakeTask.new
8
-
9
- desc "Checks markdown code style with Markdownlint"
10
- task :mdl do
11
- puts "Running mdl..."
12
-
13
- targets = [
14
- *Dir.glob("docs/**/*.md"),
15
- "CONTRIBUTING.md",
16
- ".github/ISSUE_TEMPLATE.md"
17
- ]
18
-
19
- abort unless system("mdl", *targets)
20
- end
21
- end
data/tasks/local.rake DELETED
@@ -1,25 +0,0 @@
1
- desc 'Runs a command agains the local sample application'
2
- task :local do
3
- Rake::Task['setup'].invoke(false,
4
- '.test-rails-apps',
5
- 'rails_template_with_data')
6
-
7
- app_folder = ".test-rails-apps/rails-#{Rails::VERSION::STRING}"
8
-
9
- # Discard the "local" argument (name of the task)
10
- argv = ARGV[1..-1]
11
-
12
- # If it's a rails command, or we're using Rails 5, auto add the rails script
13
- rails_commands = %w(generate console server db dbconsole g c s runner)
14
-
15
- if Rails::VERSION::MAJOR >= 5 || rails_commands.include?(argv[0])
16
- argv.unshift('rails')
17
- end
18
-
19
- command = ['bundle', 'exec', *argv].join(' ')
20
- env = { 'BUNDLE_GEMFILE' => ENV['BUNDLE_GEMFILE'] }
21
-
22
- Dir.chdir(app_folder) do
23
- Bundler.with_clean_env { Kernel.exec(env, command) }
24
- end
25
- end