activeadmin 1.1.0 → 2.12.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 (580) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +784 -111
  3. data/CODE_OF_CONDUCT.md +64 -12
  4. data/CONTRIBUTING.md +83 -61
  5. data/README.md +73 -19
  6. data/app/assets/javascripts/active_admin/base.js +524 -0
  7. data/app/assets/stylesheets/active_admin/_base.scss +53 -37
  8. data/app/assets/stylesheets/active_admin/_forms.scss +3 -25
  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/_main_structure.scss +1 -1
  24. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -1
  25. data/app/javascript/active_admin/base.js +28 -0
  26. data/app/javascript/active_admin/ext/jquery-ui.js +7 -0
  27. data/app/javascript/active_admin/ext/jquery.js +9 -0
  28. data/app/javascript/active_admin/initializers/batch-actions.js +61 -0
  29. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  30. data/app/javascript/active_admin/initializers/datepicker.js +16 -0
  31. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  32. data/app/javascript/active_admin/initializers/filters.js +10 -0
  33. data/app/javascript/active_admin/initializers/has-many.js +98 -0
  34. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  35. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  36. data/app/javascript/active_admin/initializers/tabs.js +6 -0
  37. data/app/javascript/active_admin/lib/checkbox-toggler.js +49 -0
  38. data/app/javascript/active_admin/lib/dropdown-menu.js +116 -0
  39. data/app/javascript/active_admin/lib/filters.js +39 -0
  40. data/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  41. data/app/javascript/active_admin/lib/per-page.js +38 -0
  42. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  43. data/app/javascript/active_admin/lib/utils.js +40 -0
  44. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  45. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  46. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  47. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  48. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  49. data/app/views/active_admin/devise/registrations/new.html.erb +2 -3
  50. data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
  51. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  52. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  53. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  54. data/app/views/active_admin/page/index.html.arb +1 -0
  55. data/app/views/active_admin/resource/edit.html.arb +1 -0
  56. data/app/views/active_admin/resource/index.html.arb +1 -0
  57. data/app/views/active_admin/resource/new.html.arb +1 -0
  58. data/app/views/active_admin/resource/show.html.arb +1 -0
  59. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  60. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  61. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  62. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  63. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  64. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  65. data/app/views/layouts/active_admin.html.arb +1 -0
  66. data/app/views/layouts/active_admin_logged_out.html.erb +17 -7
  67. data/config/locales/ar.yml +9 -8
  68. data/config/locales/az.yml +138 -0
  69. data/config/locales/bg.yml +1 -1
  70. data/config/locales/bs.yml +1 -0
  71. data/config/locales/ca.yml +1 -1
  72. data/config/locales/cs.yml +1 -0
  73. data/config/locales/da.yml +1 -0
  74. data/config/locales/de-CH.yml +1 -0
  75. data/config/locales/de.yml +29 -0
  76. data/config/locales/el.yml +1 -0
  77. data/config/locales/en-CA.yml +4 -3
  78. data/config/locales/en-GB.yml +4 -3
  79. data/config/locales/en.yml +24 -4
  80. data/config/locales/eo.yml +145 -0
  81. data/config/locales/es-MX.yml +3 -1
  82. data/config/locales/es.yml +26 -6
  83. data/config/locales/fa.yml +1 -0
  84. data/config/locales/fi.yml +2 -1
  85. data/config/locales/fr.yml +6 -5
  86. data/config/locales/he.yml +1 -1
  87. data/config/locales/hr.yml +1 -0
  88. data/config/locales/hu.yml +5 -0
  89. data/config/locales/id.yml +1 -0
  90. data/config/locales/it.yml +31 -3
  91. data/config/locales/ja.yml +8 -2
  92. data/config/locales/ko.yml +2 -1
  93. data/config/locales/lt.yml +3 -2
  94. data/config/locales/lv.yml +3 -2
  95. data/config/locales/mk.yml +134 -0
  96. data/config/locales/nb.yml +16 -5
  97. data/config/locales/nl.yml +13 -1
  98. data/config/locales/pl.yml +72 -3
  99. data/config/locales/pt-BR.yml +9 -0
  100. data/config/locales/pt-PT.yml +1 -0
  101. data/config/locales/ro.yml +4 -2
  102. data/config/locales/ru.yml +3 -0
  103. data/config/locales/sk.yml +60 -0
  104. data/config/locales/sv-SE.yml +3 -0
  105. data/config/locales/tr.yml +10 -0
  106. data/config/locales/uk.yml +3 -0
  107. data/config/locales/vi.yml +53 -10
  108. data/config/locales/zh-CN.yml +34 -5
  109. data/config/locales/zh-TW.yml +1 -0
  110. data/docs/.gitignore +1 -0
  111. data/docs/0-installation.md +29 -5
  112. data/docs/1-general-configuration.md +36 -1
  113. data/docs/10-custom-pages.md +14 -0
  114. data/docs/11-decorators.md +16 -5
  115. data/docs/12-arbre-components.md +41 -1
  116. data/docs/13-authorization-adapter.md +41 -22
  117. data/docs/2-resource-customization.md +20 -6
  118. data/docs/3-index-pages/custom-index.md +1 -1
  119. data/docs/3-index-pages/index-as-blog.md +1 -1
  120. data/docs/3-index-pages/index-as-table.md +12 -5
  121. data/docs/3-index-pages.md +18 -1
  122. data/docs/5-forms.md +23 -4
  123. data/docs/6-show-pages.md +12 -0
  124. data/docs/8-custom-actions.md +12 -1
  125. data/docs/9-batch-actions.md +2 -2
  126. data/docs/CNAME +1 -1
  127. data/docs/Gemfile +4 -2
  128. data/docs/Gemfile.lock +283 -0
  129. data/docs/_config.yml +3 -1
  130. data/docs/_includes/toc.html +1 -1
  131. data/docs/_includes/top-menu.html +9 -1
  132. data/docs/documentation.md +2 -2
  133. data/docs/images/tidelift.svg +14 -0
  134. data/docs/index.html +110 -9
  135. data/docs/stylesheets/main.css +55 -2
  136. data/lib/active_admin/abstract_view_factory.rb +14 -51
  137. data/lib/active_admin/application.rb +65 -172
  138. data/lib/active_admin/application_settings.rb +43 -0
  139. data/lib/active_admin/asset_registration.rb +1 -8
  140. data/lib/active_admin/authorization_adapter.rb +4 -3
  141. data/lib/active_admin/base_controller/authorization.rb +18 -18
  142. data/lib/active_admin/base_controller/menu.rb +1 -0
  143. data/lib/active_admin/base_controller.rb +12 -11
  144. data/lib/active_admin/batch_actions/controller.rb +6 -5
  145. data/lib/active_admin/batch_actions/resource_extension.rb +16 -10
  146. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  147. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  148. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  149. data/lib/active_admin/batch_actions.rb +1 -0
  150. data/lib/active_admin/callbacks.rb +2 -1
  151. data/lib/active_admin/cancan_adapter.rb +2 -1
  152. data/lib/active_admin/collection_decorator.rb +32 -0
  153. data/lib/active_admin/component.rb +1 -0
  154. data/lib/active_admin/controller_action.rb +3 -1
  155. data/lib/active_admin/csv_builder.rb +15 -21
  156. data/lib/active_admin/dependency.rb +14 -77
  157. data/lib/active_admin/deprecation.rb +1 -25
  158. data/lib/active_admin/devise.rb +16 -5
  159. data/lib/active_admin/dsl.rb +3 -9
  160. data/lib/active_admin/dynamic_setting.rb +39 -0
  161. data/lib/active_admin/dynamic_settings_node.rb +29 -0
  162. data/lib/active_admin/engine.rb +16 -7
  163. data/lib/active_admin/error.rb +5 -4
  164. data/lib/active_admin/filters/active.rb +2 -1
  165. data/lib/active_admin/filters/active_filter.rb +52 -15
  166. data/lib/active_admin/filters/active_sidebar.rb +8 -30
  167. data/lib/active_admin/filters/dsl.rb +1 -0
  168. data/lib/active_admin/filters/forms.rb +13 -9
  169. data/lib/active_admin/filters/formtastic_addons.rb +3 -7
  170. data/lib/active_admin/filters/resource_extension.rb +30 -5
  171. data/lib/active_admin/filters.rb +8 -7
  172. data/lib/active_admin/form_builder.rb +110 -70
  173. data/lib/active_admin/generators/boilerplate.rb +13 -4
  174. data/lib/active_admin/helpers/collection.rb +2 -0
  175. data/lib/active_admin/helpers/i18n.rb +1 -0
  176. data/lib/active_admin/helpers/optional_display.rb +3 -2
  177. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  178. data/lib/active_admin/helpers/scope_chain.rb +2 -0
  179. data/lib/active_admin/inputs/datepicker_input.rb +10 -2
  180. data/lib/active_admin/inputs/filters/base/search_method_select.rb +7 -6
  181. data/lib/active_admin/inputs/filters/base.rb +2 -1
  182. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  183. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  184. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  185. data/lib/active_admin/inputs/filters/date_range_input.rb +16 -12
  186. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  187. data/lib/active_admin/inputs/filters/select_input.rb +8 -3
  188. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  189. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  190. data/lib/active_admin/inputs.rb +1 -0
  191. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  192. data/lib/active_admin/localizers.rb +2 -1
  193. data/lib/active_admin/menu.rb +9 -11
  194. data/lib/active_admin/menu_collection.rb +1 -0
  195. data/lib/active_admin/menu_item.rb +11 -38
  196. data/lib/active_admin/namespace.rb +32 -19
  197. data/lib/active_admin/namespace_settings.rb +127 -0
  198. data/lib/active_admin/order_clause.rb +4 -3
  199. data/lib/active_admin/orm/active_record/comments/comment.rb +5 -4
  200. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  201. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  202. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  203. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +36 -25
  204. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  205. data/lib/active_admin/orm/active_record/comments.rb +35 -23
  206. data/lib/active_admin/orm/active_record.rb +2 -1
  207. data/lib/active_admin/orm/mongoid.rb +1 -0
  208. data/lib/active_admin/page.rb +2 -1
  209. data/lib/active_admin/page_controller.rb +1 -0
  210. data/lib/active_admin/page_dsl.rb +2 -1
  211. data/lib/active_admin/page_presenter.rb +3 -1
  212. data/lib/active_admin/pundit_adapter.rb +61 -12
  213. data/lib/active_admin/resource/action_items.rb +12 -6
  214. data/lib/active_admin/resource/attributes.rb +9 -5
  215. data/lib/active_admin/resource/belongs_to.rb +9 -3
  216. data/lib/active_admin/resource/controllers.rb +2 -1
  217. data/lib/active_admin/resource/includes.rb +1 -0
  218. data/lib/active_admin/resource/menu.rb +6 -5
  219. data/lib/active_admin/resource/model.rb +16 -0
  220. data/lib/active_admin/resource/naming.rb +6 -5
  221. data/lib/active_admin/resource/ordering.rb +1 -0
  222. data/lib/active_admin/resource/page_presenters.rb +1 -0
  223. data/lib/active_admin/resource/pagination.rb +1 -0
  224. data/lib/active_admin/resource/routes.rb +26 -14
  225. data/lib/active_admin/resource/scope_to.rb +8 -7
  226. data/lib/active_admin/resource/scopes.rb +4 -3
  227. data/lib/active_admin/resource/sidebars.rb +3 -2
  228. data/lib/active_admin/resource.rb +37 -22
  229. data/lib/active_admin/resource_collection.rb +3 -2
  230. data/lib/active_admin/resource_controller/action_builder.rb +11 -0
  231. data/lib/active_admin/resource_controller/data_access.rb +35 -5
  232. data/lib/active_admin/resource_controller/decorators.rb +10 -31
  233. data/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  234. data/lib/active_admin/resource_controller/resource_class_methods.rb +3 -0
  235. data/lib/active_admin/resource_controller/scoping.rb +2 -1
  236. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  237. data/lib/active_admin/resource_controller/streaming.rb +9 -7
  238. data/lib/active_admin/resource_controller.rb +14 -10
  239. data/lib/active_admin/resource_dsl.rb +17 -27
  240. data/lib/active_admin/router.rb +91 -84
  241. data/lib/active_admin/scope.rb +20 -11
  242. data/lib/active_admin/settings_node.rb +20 -0
  243. data/lib/active_admin/sidebar_section.rb +4 -1
  244. data/lib/active_admin/version.rb +2 -1
  245. data/lib/active_admin/view_factory.rb +18 -17
  246. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  247. data/lib/active_admin/view_helpers/auto_link_helper.rb +1 -0
  248. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +6 -5
  249. data/lib/active_admin/view_helpers/display_helper.rb +25 -8
  250. data/lib/active_admin/view_helpers/download_format_links_helper.rb +3 -1
  251. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  252. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  253. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  254. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +4 -0
  255. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  256. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  257. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  258. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  259. data/lib/active_admin/view_helpers.rb +2 -1
  260. data/lib/active_admin/views/action_items.rb +1 -0
  261. data/lib/active_admin/views/components/active_admin_form.rb +14 -8
  262. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  263. data/lib/active_admin/views/components/attributes_table.rb +9 -8
  264. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  265. data/lib/active_admin/views/components/columns.rb +1 -0
  266. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  267. data/lib/active_admin/views/components/index_list.rb +4 -3
  268. data/lib/active_admin/views/components/menu.rb +33 -0
  269. data/lib/active_admin/views/components/menu_item.rb +59 -0
  270. data/lib/active_admin/views/components/paginated_collection.rb +22 -20
  271. data/lib/active_admin/views/components/panel.rb +2 -1
  272. data/lib/active_admin/views/components/scopes.rb +18 -8
  273. data/lib/active_admin/views/components/sidebar.rb +14 -0
  274. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  275. data/lib/active_admin/views/components/site_title.rb +7 -7
  276. data/lib/active_admin/views/components/status_tag.rb +14 -26
  277. data/lib/active_admin/views/components/table_for.rb +22 -29
  278. data/lib/active_admin/views/components/tabs.rb +18 -5
  279. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  280. data/lib/active_admin/views/footer.rb +6 -8
  281. data/lib/active_admin/views/header.rb +4 -15
  282. data/lib/active_admin/views/index_as_block.rb +1 -0
  283. data/lib/active_admin/views/index_as_blog.rb +3 -2
  284. data/lib/active_admin/views/index_as_grid.rb +27 -26
  285. data/lib/active_admin/views/index_as_table.rb +34 -25
  286. data/lib/active_admin/views/pages/base.rb +44 -60
  287. data/lib/active_admin/views/pages/form.rb +1 -0
  288. data/lib/active_admin/views/pages/index.rb +16 -13
  289. data/lib/active_admin/views/pages/layout.rb +1 -0
  290. data/lib/active_admin/views/pages/page.rb +1 -0
  291. data/lib/active_admin/views/pages/show.rb +1 -0
  292. data/lib/active_admin/views/tabbed_navigation.rb +5 -59
  293. data/lib/active_admin/views/title_bar.rb +2 -1
  294. data/lib/active_admin/views.rb +2 -1
  295. data/lib/active_admin.rb +68 -63
  296. data/lib/activeadmin.rb +2 -1
  297. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  298. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  299. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  300. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  301. data/lib/generators/active_admin/install/install_generator.rb +19 -8
  302. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +45 -3
  303. data/lib/generators/active_admin/install/templates/dashboard.rb +3 -3
  304. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  305. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  306. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  307. data/lib/generators/active_admin/resource/resource_generator.rb +5 -4
  308. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  309. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  310. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  311. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  312. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  313. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  314. data/lib/ransack_ext.rb +10 -9
  315. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  316. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  317. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  318. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  319. metadata +124 -557
  320. data/.github/ISSUE_TEMPLATE.md +0 -20
  321. data/.gitignore +0 -49
  322. data/.mdlrc +0 -1
  323. data/.rubocop.yml +0 -76
  324. data/.simplecov +0 -13
  325. data/.travis.yml +0 -51
  326. data/.yardopts +0 -7
  327. data/Gemfile +0 -58
  328. data/Rakefile +0 -54
  329. data/activeadmin.gemspec +0 -32
  330. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  331. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  332. data/app/assets/images/active_admin/orderable.png +0 -0
  333. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  334. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  335. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  336. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  337. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  338. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  339. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  340. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  341. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  342. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  343. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  344. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  345. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  346. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  347. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  348. data/codecov.yml +0 -25
  349. data/config/i18n-tasks.yml +0 -26
  350. data/config/mdl_style.rb +0 -9
  351. data/cucumber.yml +0 -3
  352. data/features/action_item.feature +0 -73
  353. data/features/authorization.feature +0 -64
  354. data/features/authorization_cancan.feature +0 -52
  355. data/features/authorization_pundit.feature +0 -37
  356. data/features/belongs_to.feature +0 -124
  357. data/features/breadcrumb.feature +0 -75
  358. data/features/comments/commenting.feature +0 -178
  359. data/features/comments/viewing_index.feature +0 -19
  360. data/features/create_another.feature +0 -55
  361. data/features/dashboard.feature +0 -16
  362. data/features/decorators.feature +0 -43
  363. data/features/development_reloading.feature +0 -28
  364. data/features/edit_page.feature +0 -116
  365. data/features/favicon.feature +0 -20
  366. data/features/first_boot.feature +0 -16
  367. data/features/footer.feature +0 -28
  368. data/features/global_navigation.feature +0 -29
  369. data/features/i18n.feature +0 -55
  370. data/features/index/batch_actions.feature +0 -218
  371. data/features/index/filters.feature +0 -239
  372. data/features/index/format_as_csv.feature +0 -220
  373. data/features/index/formats.feature +0 -88
  374. data/features/index/index_as_block.feature +0 -15
  375. data/features/index/index_as_blog.feature +0 -69
  376. data/features/index/index_as_grid.feature +0 -45
  377. data/features/index/index_as_table.feature +0 -291
  378. data/features/index/index_blank_slate.feature +0 -83
  379. data/features/index/index_parameters.feature +0 -75
  380. data/features/index/index_scope_to.feature +0 -56
  381. data/features/index/index_scopes.feature +0 -285
  382. data/features/index/page_title.feature +0 -41
  383. data/features/index/pagination.feature +0 -63
  384. data/features/index/switch_index_view.feature +0 -73
  385. data/features/menu.feature +0 -72
  386. data/features/meta_tags.feature +0 -21
  387. data/features/new_page.feature +0 -107
  388. data/features/registering_assets.feature +0 -38
  389. data/features/registering_pages.feature +0 -237
  390. data/features/registering_resources.feature +0 -33
  391. data/features/renamed_resource.feature +0 -30
  392. data/features/root_to.feature +0 -17
  393. data/features/show/attributes_table_title.feature +0 -54
  394. data/features/show/columns.feature +0 -40
  395. data/features/show/default_content.feature +0 -44
  396. data/features/show/page_title.feature +0 -58
  397. data/features/show/tabs.feature +0 -33
  398. data/features/sidebar_sections.feature +0 -210
  399. data/features/site_title.feature +0 -47
  400. data/features/specifying_actions.feature +0 -118
  401. data/features/step_definitions/action_item_steps.rb +0 -7
  402. data/features/step_definitions/action_link_steps.rb +0 -19
  403. data/features/step_definitions/additional_web_steps.rb +0 -81
  404. data/features/step_definitions/asset_steps.rb +0 -15
  405. data/features/step_definitions/attribute_steps.rb +0 -18
  406. data/features/step_definitions/attributes_table_title_steps.rb +0 -11
  407. data/features/step_definitions/batch_action_steps.rb +0 -81
  408. data/features/step_definitions/blog_steps.rb +0 -3
  409. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  410. data/features/step_definitions/column_steps.rb +0 -8
  411. data/features/step_definitions/comment_steps.rb +0 -32
  412. data/features/step_definitions/configuration_steps.rb +0 -100
  413. data/features/step_definitions/dashboard_steps.rb +0 -15
  414. data/features/step_definitions/factory_steps.rb +0 -35
  415. data/features/step_definitions/filter_steps.rb +0 -48
  416. data/features/step_definitions/flash_steps.rb +0 -11
  417. data/features/step_definitions/footer_steps.rb +0 -11
  418. data/features/step_definitions/format_steps.rb +0 -56
  419. data/features/step_definitions/i18n_steps.rb +0 -11
  420. data/features/step_definitions/index_scope_steps.rb +0 -29
  421. data/features/step_definitions/index_views_steps.rb +0 -3
  422. data/features/step_definitions/layout_steps.rb +0 -3
  423. data/features/step_definitions/member_link_steps.rb +0 -7
  424. data/features/step_definitions/menu_steps.rb +0 -11
  425. data/features/step_definitions/meta_tag_steps.rb +0 -3
  426. data/features/step_definitions/pagination_steps.rb +0 -15
  427. data/features/step_definitions/sidebar_steps.rb +0 -11
  428. data/features/step_definitions/site_title_steps.rb +0 -17
  429. data/features/step_definitions/tab_steps.rb +0 -8
  430. data/features/step_definitions/table_steps.rb +0 -116
  431. data/features/step_definitions/user_steps.rb +0 -52
  432. data/features/step_definitions/web_steps.rb +0 -86
  433. data/features/sti_resource.feature +0 -65
  434. data/features/strong_parameters.feature +0 -69
  435. data/features/support/env.rb +0 -122
  436. data/features/support/paths.rb +0 -73
  437. data/features/support/regular_env.rb +0 -7
  438. data/features/support/reload_env.rb +0 -7
  439. data/features/support/selectors.rb +0 -45
  440. data/features/users/logging_in.feature +0 -36
  441. data/features/users/logging_out.feature +0 -13
  442. data/features/users/resetting_password.feature +0 -34
  443. data/gemfiles/rails_42.gemfile +0 -10
  444. data/gemfiles/rails_50.gemfile +0 -10
  445. data/gemfiles/rails_51.gemfile +0 -10
  446. data/lib/active_admin/event.rb +0 -24
  447. data/lib/active_admin/helpers/settings.rb +0 -114
  448. data/lib/active_admin/reloader.rb +0 -25
  449. data/lib/bug_report_templates/active_admin_master.rb +0 -113
  450. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  451. data/spec/bug_report_templates_spec.rb +0 -26
  452. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  453. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  454. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  455. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  456. data/spec/javascripts/fixtures/flashes.html +0 -2
  457. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  458. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  459. data/spec/javascripts/support/jasmine.yml +0 -74
  460. data/spec/javascripts/support/jasmine_runner.rb +0 -19
  461. data/spec/rails_helper.rb +0 -59
  462. data/spec/requests/default_namespace_spec.rb +0 -81
  463. data/spec/requests/memory_spec.rb +0 -25
  464. data/spec/requests/stylesheets_spec.rb +0 -18
  465. data/spec/spec_helper.rb +0 -1
  466. data/spec/support/active_admin_integration_spec_helper.rb +0 -73
  467. data/spec/support/active_admin_request_helpers.rb +0 -39
  468. data/spec/support/rails_template.rb +0 -150
  469. data/spec/support/rails_template_with_data.rb +0 -327
  470. data/spec/support/templates/admin/stores.rb +0 -7
  471. data/spec/support/templates/en.yml +0 -8
  472. data/spec/support/templates/manifest.js +0 -3
  473. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  474. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  475. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  476. data/spec/support/templates/policies/application_policy.rb +0 -44
  477. data/spec/support/templates/policies/category_policy.rb +0 -7
  478. data/spec/support/templates/policies/post_policy.rb +0 -15
  479. data/spec/support/templates/policies/store_policy.rb +0 -11
  480. data/spec/support/templates/policies/user_policy.rb +0 -11
  481. data/spec/support/templates/post_decorator.rb +0 -10
  482. data/spec/unit/abstract_view_factory_spec.rb +0 -78
  483. data/spec/unit/action_builder_spec.rb +0 -125
  484. data/spec/unit/active_admin_spec.rb +0 -11
  485. data/spec/unit/application_spec.rb +0 -184
  486. data/spec/unit/asset_registration_spec.rb +0 -81
  487. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  488. data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
  489. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  490. data/spec/unit/auto_link_spec.rb +0 -93
  491. data/spec/unit/batch_actions/resource_spec.rb +0 -84
  492. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  493. data/spec/unit/belongs_to_spec.rb +0 -76
  494. data/spec/unit/cancan_adapter_spec.rb +0 -43
  495. data/spec/unit/comments_spec.rb +0 -176
  496. data/spec/unit/component_spec.rb +0 -18
  497. data/spec/unit/config_shared_examples.rb +0 -59
  498. data/spec/unit/controller_filters_spec.rb +0 -41
  499. data/spec/unit/csv_builder_spec.rb +0 -304
  500. data/spec/unit/dependency_spec.rb +0 -135
  501. data/spec/unit/devise_spec.rb +0 -110
  502. data/spec/unit/dsl_spec.rb +0 -120
  503. data/spec/unit/filters/active_filter_spec.rb +0 -135
  504. data/spec/unit/filters/active_spec.rb +0 -24
  505. data/spec/unit/filters/filter_form_builder_spec.rb +0 -502
  506. data/spec/unit/filters/resource_spec.rb +0 -128
  507. data/spec/unit/form_builder_spec.rb +0 -990
  508. data/spec/unit/generators/install_spec.rb +0 -31
  509. data/spec/unit/helpers/collection_spec.rb +0 -68
  510. data/spec/unit/helpers/scope_chain_spec.rb +0 -35
  511. data/spec/unit/helpers/settings_spec.rb +0 -30
  512. data/spec/unit/i18n_spec.rb +0 -29
  513. data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
  514. data/spec/unit/menu_collection_spec.rb +0 -62
  515. data/spec/unit/menu_item_spec.rb +0 -141
  516. data/spec/unit/menu_spec.rb +0 -71
  517. data/spec/unit/namespace/authorization_spec.rb +0 -27
  518. data/spec/unit/namespace/register_page_spec.rb +0 -99
  519. data/spec/unit/namespace/register_resource_spec.rb +0 -162
  520. data/spec/unit/namespace_spec.rb +0 -124
  521. data/spec/unit/order_clause_spec.rb +0 -81
  522. data/spec/unit/page_controller_spec.rb +0 -5
  523. data/spec/unit/page_spec.rb +0 -128
  524. data/spec/unit/pretty_format_spec.rb +0 -82
  525. data/spec/unit/pundit_adapter_spec.rb +0 -98
  526. data/spec/unit/resource/action_items_spec.rb +0 -69
  527. data/spec/unit/resource/attributes_spec.rb +0 -49
  528. data/spec/unit/resource/includes_spec.rb +0 -21
  529. data/spec/unit/resource/menu_spec.rb +0 -18
  530. data/spec/unit/resource/naming_spec.rb +0 -122
  531. data/spec/unit/resource/ordering_spec.rb +0 -35
  532. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  533. data/spec/unit/resource/pagination_spec.rb +0 -38
  534. data/spec/unit/resource/routes_spec.rb +0 -125
  535. data/spec/unit/resource/scopes_spec.rb +0 -50
  536. data/spec/unit/resource/sidebars_spec.rb +0 -43
  537. data/spec/unit/resource_collection_spec.rb +0 -175
  538. data/spec/unit/resource_controller/data_access_spec.rb +0 -230
  539. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  540. data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
  541. data/spec/unit/resource_controller_spec.rb +0 -273
  542. data/spec/unit/resource_registration_spec.rb +0 -61
  543. data/spec/unit/resource_spec.rb +0 -320
  544. data/spec/unit/routing_spec.rb +0 -211
  545. data/spec/unit/scope_spec.rb +0 -209
  546. data/spec/unit/settings_spec.rb +0 -117
  547. data/spec/unit/view_factory_spec.rb +0 -19
  548. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -252
  549. data/spec/unit/view_helpers/display_helper_spec.rb +0 -195
  550. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  551. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  552. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
  553. data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
  554. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
  555. data/spec/unit/views/components/attributes_table_spec.rb +0 -271
  556. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  557. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  558. data/spec/unit/views/components/columns_spec.rb +0 -187
  559. data/spec/unit/views/components/index_list_spec.rb +0 -49
  560. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  561. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  562. data/spec/unit/views/components/panel_spec.rb +0 -58
  563. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  564. data/spec/unit/views/components/site_title_spec.rb +0 -76
  565. data/spec/unit/views/components/status_tag_spec.rb +0 -265
  566. data/spec/unit/views/components/table_for_spec.rb +0 -436
  567. data/spec/unit/views/components/tabs_spec.rb +0 -67
  568. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  569. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  570. data/spec/unit/views/pages/form_spec.rb +0 -54
  571. data/spec/unit/views/pages/index_spec.rb +0 -60
  572. data/spec/unit/views/pages/layout_spec.rb +0 -59
  573. data/spec/unit/views/pages/show_spec.rb +0 -32
  574. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  575. data/tasks/docs.rake +0 -64
  576. data/tasks/lint.rake +0 -21
  577. data/tasks/local.rake +0 -25
  578. data/tasks/parallel_tests.rake +0 -66
  579. data/tasks/test.rake +0 -29
  580. /data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +0 -0
data/docs/index.html CHANGED
@@ -10,81 +10,101 @@
10
10
  <p class="intro">
11
11
  The <strong>administration framework</strong> for business critical <strong>Ruby on Rails</strong> applications.
12
12
  </p>
13
+
13
14
  <p>
14
15
  Active Admin is a Ruby on Rails plugin for generating administration style interfaces. It abstracts common business application patterns to make it simple for developers to implement beautiful and elegant interfaces with very little effort.
15
16
  </p>
17
+
16
18
  <h2>
17
19
  A beautiful interface designed for real people.
18
20
  </h2>
21
+
19
22
  <div id="features">
20
23
  <div id="features-left">
21
24
  <h3 class="first">
22
25
  Global Navigation
23
26
  </h3>
27
+
24
28
  <p>
25
29
  Customizable global navigation allows you to create usable admin interfaces for your business.
26
30
  </p>
31
+
27
32
  <h3>
28
33
  Scopes
29
34
  </h3>
35
+
30
36
  <p>
31
37
  Use scopes to create sections of mutually exclusive resources for quick navigation and reporting.
32
38
  </p>
39
+
33
40
  <h3>
34
41
  Index Styles
35
42
  </h3>
43
+
36
44
  <p>
37
45
  Index screens are available in many styles. The default, shown here, is a table view, but Active Admin also supports Grids, Blocks and a Blog view.
38
46
  </p>
47
+
39
48
  <h3>
40
49
  <span class="caps">API</span> &amp; Downloads
41
50
  </h3>
51
+
42
52
  <p>
43
- Each resource that is registered wtih Active Admin becomes available as <span class="caps">JSON</span>, <span class="caps">XML</span> and <span class="caps">CSV</span> download. Customize the output to meet your requirements.
53
+ Each resource that is registered with Active Admin becomes available as <span class="caps">JSON</span>, <span class="caps">XML</span> and <span class="caps">CSV</span> download. Customize the output to meet your requirements.
44
54
  </p>
45
55
  </div>
56
+
46
57
  <div id="features-right">
47
58
  <h3 class="first">
48
59
  User Authentication
49
60
  </h3>
61
+
50
62
  <p>
51
63
  Use the bundled Devise configuration or implement your own authorization using the provided hooks.
52
64
  </p>
65
+
53
66
  <h3>
54
67
  Action Items
55
68
  </h3>
69
+
56
70
  <p>
57
71
  Add buttons, links or other content in the “Action Items” section on each screen.
58
72
  </p>
73
+
59
74
  <h3>
60
75
  Filters
61
76
  </h3>
77
+
62
78
  <p>
63
79
  Allow users to filter resources by searching strings, text fields, dates, and numeric values.
64
80
  </p>
81
+
65
82
  <h3>
66
83
  Sidebar Sections
67
84
  </h3>
85
+
68
86
  <p>
69
87
  Customize the sidebar sections with a simple <span class="caps">DSL</span> built in to Active Admin.
70
88
  </p>
71
89
  </div>
72
90
  </div>
91
+
73
92
  <p>
74
93
  Active Admin’s interface was designed from the ground up for non-technical users. It makes it easy for developers to build highly usable interfaces that customers will actually enjoy using.
75
94
  </p>
95
+
76
96
  <h2>
77
97
  An elegant <span class="caps">DSL</span> built for developer productivity.
78
98
  </h2>
99
+
79
100
  <p>
80
101
  Get started with one line of code or customize the entire interface with the provided <span class="caps">DSL</span>.
81
102
  </p>
103
+
82
104
  <div id="dsl">
83
105
  <div class="highlight">
84
- <pre>
85
- <code class="ruby"><span class="c1"># app/admin/products.rb</span>
106
+ <pre><code class="ruby"><span class="c1"># app/admin/products.rb</span>
86
107
  <span class="no">ActiveAdmin</span><span class="o">.</span><span class="n">register</span> <span class="no">Product</span> <span class="k">do</span>
87
-
88
108
  <span class="c1"># Create sections on the index screen</span>
89
109
  <span class="n">scope</span> <span class="ss">:all</span><span class="p">,</span> <span class="ss">default:</span> <span class="kp">true</span>
90
110
  <span class="n">scope</span> <span class="ss">:available</span>
@@ -102,14 +122,95 @@
102
122
  <span class="n">column</span> <span class="s2">"Price"</span><span class="p">,</span> <span class="ss">sortable:</span> <span class="ss">:price</span> <span class="k">do</span> <span class="o">|</span><span class="n">product</span><span class="o">|</span>
103
123
  <span class="n">number_to_currency</span> <span class="n">product</span><span class="o">.</span><span class="n">price</span>
104
124
  <span class="k">end</span>
105
- <span class="n">default_actions</span>
125
+ <span class="n">actions</span>
106
126
  <span class="k">end</span>
107
-
108
- <span class="k">end</span>
109
- </code>
110
- </pre>
127
+ <span class="k">end</span></code></pre>
111
128
  </div>
112
129
  </div>
130
+
131
+ <h2>
132
+ Active Admin for enterprise
133
+ </h2>
134
+
135
+ <p>
136
+ <a href="https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=enterprise">
137
+ Available as part of the Tidelift Subscription
138
+ </a>
139
+ </p>
140
+
141
+ <p>
142
+ Active Admin and the maintainers of thousands of other packages are
143
+ working with Tidelift to deliver one enterprise subscription that
144
+ covers all of the open source you use.
145
+ </p>
146
+
147
+ <p>
148
+ If you want the flexibility of open source and the confidence of
149
+ commercial-grade software, this is for you.
150
+ </p>
151
+
152
+ <div class="tidelift-buttons">
153
+ <a href="https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=enterprise" target="_blank">
154
+ <span>LEARN MORE</span>
155
+ </a>
156
+
157
+ <a href="https://tidelift.com/subscription/request-a-demo?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=enterprise" target="_blank">
158
+ <span>REQUEST A DEMO</span>
159
+ </a>
160
+ </div>
161
+
162
+ <h3>
163
+ The Tidelift Subscription manages your dependencies for you.
164
+ </h3>
165
+
166
+ <ul>
167
+ <li>
168
+ Get the tools you need to continuously catalog and understand the open source software that your application depends on.
169
+ </li>
170
+
171
+ <li>
172
+ Your subscription helps pay the open source maintainers of the exact
173
+ packages you use to ensure they meet the standards you require.
174
+ </li>
175
+
176
+ <li>
177
+ Address issues proactively, with tools that scan for new security,
178
+ licensing, and maintenance issues, and alert our participating open
179
+ source maintainers so they can resolve them on your behalf.
180
+ </li>
181
+
182
+ <li>
183
+ Measure and improve your open source dependencies' health—which
184
+ improves your app’s health—and get a short list of high-impact steps
185
+ your team can take to improve them even more.
186
+ </li>
187
+
188
+ <li>
189
+ Get commercial assurances that don't come for free with open source
190
+ packages, like intellectual property indemnification and support
191
+ under a service level agreement. You expect these guarantees from
192
+ proprietary software, and you can have them when using open source
193
+ as well.
194
+ </li>
195
+ </ul>
196
+
197
+ <p>
198
+ The end result? All of the capabilities you expect from
199
+ commercial-grade software, for the full breadth of open source you
200
+ use. That means less time grappling with esoteric open source trivia,
201
+ and more time building your own applications—and your business.
202
+ </p>
203
+
204
+ <div class="tidelift-buttons">
205
+ <a href="https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=enterprise" target="_blank">
206
+ <span>LEARN MORE</span>
207
+ </a>
208
+
209
+ <a href="https://tidelift.com/subscription/request-a-demo?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=enterprise" target="_blank">
210
+ <span>REQUEST A DEMO</span>
211
+ </a>
212
+ </div>
213
+
113
214
  <h2 class="getting-started-heading">
114
215
  3 Ways to Get Started:
115
216
  </h2>
@@ -559,7 +559,7 @@ caption {
559
559
  body {
560
560
  background: #f6f4f1;
561
561
  color: #676767;
562
- width: 676px;
562
+ width: 768px;
563
563
  padding: 0 20px;
564
564
  font-size: 95%;
565
565
  margin: 25px auto;
@@ -594,6 +594,56 @@ body #header {
594
594
  margin: 40px 0;
595
595
  }
596
596
 
597
+ body #header h1 {
598
+ margin-bottom: 0;
599
+ }
600
+
601
+ body #tidelift {
602
+ display: flex;
603
+ justify-content: flex-start;
604
+ }
605
+
606
+ body #tidelift a {
607
+ border: 1px solid #666666;
608
+ margin-left: auto;
609
+ padding: 10px;
610
+ text-decoration: none;
611
+ }
612
+
613
+ body #tidelift a .cta {
614
+ background: url("../images/tidelift.svg") no-repeat;
615
+ padding-left: 30px;
616
+ }
617
+
618
+ body .tidelift-buttons a {
619
+ display: table;
620
+ width: 200px;
621
+ border: 2px solid #407985;
622
+ border-radius: 4px;
623
+ text-decoration: none;
624
+ font-family: 'Yanone Kaffeesatz', 'Helvetica Neue', Arial, Helvetica, sans-serif;
625
+ font-size: 18px;
626
+ letter-spacing: 1px;
627
+ margin: 0 10px;
628
+ }
629
+
630
+ body .tidelift-buttons a:first-child {
631
+ float: left;
632
+ color: #407985;
633
+ background: #FFF;
634
+ }
635
+
636
+ body .tidelift-buttons a:last-child {
637
+ color: #FFF;
638
+ background: #407985;
639
+ }
640
+
641
+ body .tidelift-buttons a span {
642
+ display: table-cell;
643
+ vertical-align: middle;
644
+ text-align: center;
645
+ }
646
+
597
647
  body .clear {
598
648
  clear: both;
599
649
  }
@@ -629,11 +679,14 @@ body h3 {
629
679
  font-weight: 300;
630
680
  }
631
681
 
632
- body #nav {
682
+ body #nav, body #tidelift .cta {
633
683
  font-family: 'Yanone Kaffeesatz', 'Helvetica Neue', Arial, Helvetica, sans-serif;
634
684
  font-weight: 400;
635
685
  font-size: 1.2em;
636
686
  text-transform: uppercase;
687
+ }
688
+
689
+ body #nav {
637
690
  position: absolute;
638
691
  right: 0;
639
692
  top: 20px;
@@ -1,15 +1,20 @@
1
+ # frozen_string_literal: true
1
2
  module ActiveAdmin
2
- class AbstractViewFactory
3
- @@default_views = {}
3
+ class AbstractViewFactory < SettingsNode
4
4
 
5
5
  def self.register(view_hash)
6
6
  view_hash.each do |view_key, view_class|
7
- @@default_views[view_key] = view_class
7
+ super view_key, view_class
8
+ add_writer(view_key)
9
+ send "#{view_key}=", view_class
8
10
  end
9
11
  end
10
12
 
11
- def initialize
12
- @views = {}
13
+ def self.add_writer(name)
14
+ define_singleton_method("#{name}=") do |value|
15
+ value.builder_method name
16
+ instance_variable_set :"@#{name}", value
17
+ end
13
18
  end
14
19
 
15
20
  # Register a new view key with the view factory
@@ -25,61 +30,19 @@ module ActiveAdmin
25
30
  # another_view: OtherViewClass
26
31
  #
27
32
  def register(view_hash)
28
- view_hash.each do |view_key, view_class|
29
- @views[view_key] = view_class
30
- end
33
+ self.class.register view_hash
31
34
  end
32
35
 
33
36
  def default_for(key)
34
- @@default_views[key.to_sym]
35
- end
36
-
37
- def has_key?(key)
38
- @views.has_key?(key.to_sym) || @@default_views.has_key?(key.to_sym)
37
+ self.class.send key
39
38
  end
40
39
 
41
40
  def [](key)
42
- get_view_for_key(key)
41
+ send key
43
42
  end
44
43
 
45
44
  def []=(key, value)
46
- set_view_for_key(key, value)
47
- end
48
-
49
- def respond_to_missing?(method, include_private)
50
- key = key_from_method_name(method)
51
- if has_key?(key)
52
- true
53
- else
54
- super
55
- end
56
- end
57
-
58
- private
59
-
60
- def method_missing(method, *args)
61
- key = key_from_method_name(method)
62
- if has_key?(key)
63
- if method.to_s.include?('=')
64
- set_view_for_key key, args.first
65
- else
66
- get_view_for_key key
67
- end
68
- else
69
- super
70
- end
71
- end
72
-
73
- def key_from_method_name(method)
74
- method.to_s.tr('=', '').to_sym
75
- end
76
-
77
- def get_view_for_key(key)
78
- @views[key.to_sym] || @@default_views[key.to_sym]
79
- end
80
-
81
- def set_view_for_key(key, view)
82
- @views[key.to_sym] = view
45
+ send "#{key}=", value
83
46
  end
84
47
  end
85
48
  end