activeadmin 2.2.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 (299) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +469 -32
  3. data/CONTRIBUTING.md +46 -69
  4. data/README.md +13 -6
  5. data/app/assets/javascripts/active_admin/base.js +521 -0
  6. data/app/assets/stylesheets/active_admin/_base.scss +53 -37
  7. data/app/assets/stylesheets/active_admin/_forms.scss +1 -11
  8. data/app/assets/stylesheets/active_admin/_header.scss +40 -8
  9. data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
  10. data/{vendor → app}/assets/stylesheets/active_admin/_normalize.scss +25 -123
  11. data/app/assets/stylesheets/active_admin/{print.scss → _print.scss} +2 -2
  12. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  13. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +1 -2
  14. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +0 -1
  15. data/app/assets/stylesheets/active_admin/components/_tables.scss +1 -2
  16. data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -8
  17. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +17 -0
  18. data/app/assets/stylesheets/active_admin/structure/_footer.scss +6 -1
  19. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
  20. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -1
  21. data/app/javascript/active_admin/base.js +28 -0
  22. data/app/{assets/javascripts/active_admin/lib/batch_actions.es6 → javascript/active_admin/initializers/batch-actions.js} +9 -3
  23. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  24. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  25. data/app/javascript/active_admin/initializers/filters.js +10 -0
  26. data/app/{assets/javascripts/active_admin/lib/has_many.es6 → javascript/active_admin/initializers/has-many.js} +4 -1
  27. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  28. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  29. data/app/{assets/javascripts/active_admin/lib/checkbox-toggler.es6 → javascript/active_admin/lib/checkbox-toggler.js} +5 -5
  30. data/app/{assets/javascripts/active_admin/lib/dropdown-menu.es6 → javascript/active_admin/lib/dropdown-menu.js} +3 -10
  31. data/app/javascript/active_admin/lib/filters.js +39 -0
  32. data/app/{assets/javascripts/active_admin/lib/modal_dialog.es6 → javascript/active_admin/lib/modal-dialog.js} +10 -8
  33. data/app/javascript/active_admin/lib/per-page.js +38 -0
  34. data/app/{assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 → javascript/active_admin/lib/table-checkbox-toggler.js} +5 -3
  35. data/app/javascript/active_admin/lib/utils.js +40 -0
  36. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  37. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  38. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  39. data/app/views/active_admin/page/index.html.arb +1 -0
  40. data/app/views/active_admin/resource/edit.html.arb +1 -0
  41. data/app/views/active_admin/resource/index.html.arb +1 -0
  42. data/app/views/active_admin/resource/new.html.arb +1 -0
  43. data/app/views/active_admin/resource/show.html.arb +1 -0
  44. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  45. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  46. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  47. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  48. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  49. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  50. data/app/views/layouts/active_admin.html.arb +1 -0
  51. data/app/views/layouts/active_admin_logged_out.html.erb +18 -7
  52. data/config/locales/ar.yml +6 -6
  53. data/config/locales/az.yml +138 -0
  54. data/config/locales/ca.yml +0 -1
  55. data/config/locales/de.yml +18 -0
  56. data/config/locales/en-CA.yml +3 -3
  57. data/config/locales/en-GB.yml +3 -3
  58. data/config/locales/en.yml +3 -3
  59. data/config/locales/es-MX.yml +2 -1
  60. data/config/locales/es.yml +5 -5
  61. data/config/locales/fr.yml +7 -7
  62. data/config/locales/it.yml +18 -0
  63. data/config/locales/ja.yml +3 -3
  64. data/config/locales/ko.yml +1 -1
  65. data/config/locales/lv.yml +2 -2
  66. data/config/locales/nl.yml +1 -1
  67. data/config/locales/ro.yml +3 -2
  68. data/config/locales/sk.yml +59 -0
  69. data/config/locales/vi.yml +40 -12
  70. data/config/locales/zh-CN.yml +36 -17
  71. data/lib/active_admin/abstract_view_factory.rb +1 -0
  72. data/lib/active_admin/application.rb +20 -20
  73. data/lib/active_admin/application_settings.rb +4 -3
  74. data/lib/active_admin/asset_registration.rb +4 -3
  75. data/lib/active_admin/authorization_adapter.rb +6 -3
  76. data/lib/active_admin/base_controller/authorization.rb +15 -13
  77. data/lib/active_admin/base_controller/menu.rb +1 -0
  78. data/lib/active_admin/base_controller.rb +6 -5
  79. data/lib/active_admin/batch_actions/controller.rb +4 -3
  80. data/lib/active_admin/batch_actions/resource_extension.rb +10 -8
  81. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  82. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  83. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  84. data/lib/active_admin/batch_actions.rb +1 -0
  85. data/lib/active_admin/callbacks.rb +1 -0
  86. data/lib/active_admin/cancan_adapter.rb +2 -1
  87. data/lib/active_admin/collection_decorator.rb +32 -0
  88. data/lib/active_admin/component.rb +1 -0
  89. data/lib/active_admin/controller_action.rb +1 -0
  90. data/lib/active_admin/csv_builder.rb +13 -23
  91. data/lib/active_admin/dependency.rb +12 -15
  92. data/lib/active_admin/deprecation.rb +1 -0
  93. data/lib/active_admin/devise.rb +16 -5
  94. data/lib/active_admin/dsl.rb +2 -1
  95. data/lib/active_admin/dynamic_setting.rb +1 -0
  96. data/lib/active_admin/dynamic_settings_node.rb +3 -2
  97. data/lib/active_admin/engine.rb +13 -9
  98. data/lib/active_admin/error.rb +1 -2
  99. data/lib/active_admin/filters/active.rb +2 -1
  100. data/lib/active_admin/filters/active_filter.rb +7 -7
  101. data/lib/active_admin/filters/active_sidebar.rb +4 -30
  102. data/lib/active_admin/filters/dsl.rb +1 -0
  103. data/lib/active_admin/filters/forms.rb +7 -6
  104. data/lib/active_admin/filters/formtastic_addons.rb +2 -6
  105. data/lib/active_admin/filters/resource_extension.rb +30 -5
  106. data/lib/active_admin/filters.rb +8 -7
  107. data/lib/active_admin/form_builder.rb +25 -20
  108. data/lib/active_admin/generators/boilerplate.rb +13 -4
  109. data/lib/active_admin/helpers/collection.rb +2 -0
  110. data/lib/active_admin/helpers/i18n.rb +1 -0
  111. data/lib/active_admin/helpers/optional_display.rb +3 -2
  112. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  113. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  114. data/lib/active_admin/inputs/datepicker_input.rb +2 -1
  115. data/lib/active_admin/inputs/filters/base/search_method_select.rb +5 -4
  116. data/lib/active_admin/inputs/filters/base.rb +2 -1
  117. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  118. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  119. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  120. data/lib/active_admin/inputs/filters/date_range_input.rb +16 -12
  121. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  122. data/lib/active_admin/inputs/filters/select_input.rb +3 -2
  123. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  124. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  125. data/lib/active_admin/inputs.rb +1 -0
  126. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  127. data/lib/active_admin/localizers.rb +2 -1
  128. data/lib/active_admin/menu.rb +7 -3
  129. data/lib/active_admin/menu_collection.rb +1 -0
  130. data/lib/active_admin/menu_item.rb +8 -7
  131. data/lib/active_admin/namespace.rb +15 -14
  132. data/lib/active_admin/namespace_settings.rb +21 -4
  133. data/lib/active_admin/order_clause.rb +3 -2
  134. data/lib/active_admin/orm/active_record/comments/comment.rb +4 -3
  135. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  136. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  137. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  138. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +21 -20
  139. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  140. data/lib/active_admin/orm/active_record/comments.rb +28 -27
  141. data/lib/active_admin/orm/active_record.rb +2 -1
  142. data/lib/active_admin/orm/mongoid.rb +1 -0
  143. data/lib/active_admin/page.rb +2 -1
  144. data/lib/active_admin/page_controller.rb +1 -0
  145. data/lib/active_admin/page_dsl.rb +1 -0
  146. data/lib/active_admin/page_presenter.rb +1 -0
  147. data/lib/active_admin/pundit_adapter.rb +57 -15
  148. data/lib/active_admin/resource/action_items.rb +6 -5
  149. data/lib/active_admin/resource/attributes.rb +2 -1
  150. data/lib/active_admin/resource/belongs_to.rb +6 -2
  151. data/lib/active_admin/resource/controllers.rb +2 -1
  152. data/lib/active_admin/resource/includes.rb +1 -0
  153. data/lib/active_admin/resource/menu.rb +5 -4
  154. data/lib/active_admin/resource/model.rb +16 -0
  155. data/lib/active_admin/resource/naming.rb +6 -5
  156. data/lib/active_admin/resource/ordering.rb +1 -0
  157. data/lib/active_admin/resource/page_presenters.rb +1 -0
  158. data/lib/active_admin/resource/pagination.rb +1 -0
  159. data/lib/active_admin/resource/routes.rb +17 -10
  160. data/lib/active_admin/resource/scope_to.rb +8 -7
  161. data/lib/active_admin/resource/scopes.rb +1 -0
  162. data/lib/active_admin/resource/sidebars.rb +2 -1
  163. data/lib/active_admin/resource.rb +33 -19
  164. data/lib/active_admin/resource_collection.rb +1 -0
  165. data/lib/active_admin/resource_controller/action_builder.rb +1 -0
  166. data/lib/active_admin/resource_controller/data_access.rb +31 -5
  167. data/lib/active_admin/resource_controller/decorators.rb +8 -29
  168. data/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  169. data/lib/active_admin/resource_controller/resource_class_methods.rb +1 -0
  170. data/lib/active_admin/resource_controller/scoping.rb +1 -0
  171. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  172. data/lib/active_admin/resource_controller/streaming.rb +9 -7
  173. data/lib/active_admin/resource_controller.rb +14 -10
  174. data/lib/active_admin/resource_dsl.rb +11 -25
  175. data/lib/active_admin/router.rb +1 -0
  176. data/lib/active_admin/scope.rb +7 -6
  177. data/lib/active_admin/settings_node.rb +1 -0
  178. data/lib/active_admin/sidebar_section.rb +1 -0
  179. data/lib/active_admin/version.rb +2 -1
  180. data/lib/active_admin/view_factory.rb +18 -17
  181. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  182. data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -1
  183. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +4 -3
  184. data/lib/active_admin/view_helpers/display_helper.rb +15 -7
  185. data/lib/active_admin/view_helpers/download_format_links_helper.rb +2 -1
  186. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  187. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  188. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  189. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +1 -0
  190. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  191. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  192. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  193. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  194. data/lib/active_admin/view_helpers.rb +2 -1
  195. data/lib/active_admin/views/action_items.rb +1 -0
  196. data/lib/active_admin/views/components/active_admin_form.rb +7 -6
  197. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  198. data/lib/active_admin/views/components/attributes_table.rb +6 -5
  199. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  200. data/lib/active_admin/views/components/columns.rb +1 -0
  201. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  202. data/lib/active_admin/views/components/index_list.rb +4 -3
  203. data/lib/active_admin/views/components/menu.rb +2 -1
  204. data/lib/active_admin/views/components/menu_item.rb +5 -4
  205. data/lib/active_admin/views/components/paginated_collection.rb +21 -19
  206. data/lib/active_admin/views/components/panel.rb +2 -1
  207. data/lib/active_admin/views/components/scopes.rb +8 -5
  208. data/lib/active_admin/views/components/sidebar.rb +1 -0
  209. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  210. data/lib/active_admin/views/components/site_title.rb +2 -1
  211. data/lib/active_admin/views/components/status_tag.rb +12 -11
  212. data/lib/active_admin/views/components/table_for.rb +19 -17
  213. data/lib/active_admin/views/components/tabs.rb +4 -3
  214. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  215. data/lib/active_admin/views/footer.rb +3 -1
  216. data/lib/active_admin/views/header.rb +3 -2
  217. data/lib/active_admin/views/index_as_block.rb +1 -0
  218. data/lib/active_admin/views/index_as_blog.rb +2 -1
  219. data/lib/active_admin/views/index_as_grid.rb +2 -1
  220. data/lib/active_admin/views/index_as_table.rb +24 -16
  221. data/lib/active_admin/views/pages/base.rb +22 -14
  222. data/lib/active_admin/views/pages/form.rb +1 -0
  223. data/lib/active_admin/views/pages/index.rb +16 -13
  224. data/lib/active_admin/views/pages/layout.rb +1 -0
  225. data/lib/active_admin/views/pages/page.rb +1 -0
  226. data/lib/active_admin/views/pages/show.rb +1 -0
  227. data/lib/active_admin/views/tabbed_navigation.rb +3 -2
  228. data/lib/active_admin/views/title_bar.rb +2 -1
  229. data/lib/active_admin/views.rb +2 -1
  230. data/lib/active_admin.rb +63 -64
  231. data/lib/activeadmin.rb +2 -1
  232. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  233. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  234. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  235. data/lib/generators/active_admin/install/install_generator.rb +15 -8
  236. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +38 -1
  237. data/lib/generators/active_admin/install/templates/dashboard.rb +1 -0
  238. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  239. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  240. data/lib/generators/active_admin/resource/resource_generator.rb +4 -3
  241. data/lib/generators/active_admin/resource/templates/admin.rb.erb +4 -2
  242. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  243. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  244. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  245. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  246. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  247. data/lib/ransack_ext.rb +9 -8
  248. metadata +64 -132
  249. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  250. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  251. data/app/assets/images/active_admin/orderable.png +0 -0
  252. data/app/assets/javascripts/active_admin/base.es6 +0 -23
  253. data/app/assets/javascripts/active_admin/initializers/filters.es6 +0 -45
  254. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +0 -41
  255. data/app/assets/javascripts/active_admin/lib/per_page.es6 +0 -47
  256. data/docs/.gitignore +0 -1
  257. data/docs/0-installation.md +0 -118
  258. data/docs/1-general-configuration.md +0 -204
  259. data/docs/10-custom-pages.md +0 -150
  260. data/docs/11-decorators.md +0 -59
  261. data/docs/12-arbre-components.md +0 -214
  262. data/docs/13-authorization-adapter.md +0 -285
  263. data/docs/14-gotchas.md +0 -138
  264. data/docs/2-resource-customization.md +0 -466
  265. data/docs/3-index-pages/custom-index.md +0 -35
  266. data/docs/3-index-pages/index-as-block.md +0 -19
  267. data/docs/3-index-pages/index-as-blog.md +0 -69
  268. data/docs/3-index-pages/index-as-grid.md +0 -27
  269. data/docs/3-index-pages/index-as-table.md +0 -227
  270. data/docs/3-index-pages.md +0 -328
  271. data/docs/4-csv-format.md +0 -74
  272. data/docs/5-forms.md +0 -232
  273. data/docs/6-show-pages.md +0 -81
  274. data/docs/7-sidebars.md +0 -75
  275. data/docs/8-custom-actions.md +0 -177
  276. data/docs/9-batch-actions.md +0 -237
  277. data/docs/CNAME +0 -1
  278. data/docs/Gemfile +0 -4
  279. data/docs/Gemfile.lock +0 -249
  280. data/docs/README.md +0 -24
  281. data/docs/_config.yml +0 -2
  282. data/docs/_includes/footer.html +0 -8
  283. data/docs/_includes/google-analytics.html +0 -16
  284. data/docs/_includes/head.html +0 -7
  285. data/docs/_includes/toc.html +0 -98
  286. data/docs/_includes/top-menu.html +0 -17
  287. data/docs/_layouts/default.html +0 -21
  288. data/docs/documentation.md +0 -60
  289. data/docs/images/activeadmin.png +0 -0
  290. data/docs/images/code-header.png +0 -0
  291. data/docs/images/divider.png +0 -0
  292. data/docs/images/features.png +0 -0
  293. data/docs/images/tidelift.svg +0 -14
  294. data/docs/index.html +0 -125
  295. data/docs/stylesheets/main.css +0 -1176
  296. /data/app/{assets/javascripts/active_admin/ext/jquery-ui.es6 → javascript/active_admin/ext/jquery-ui.js} +0 -0
  297. /data/app/{assets/javascripts/active_admin/ext/jquery.es6 → javascript/active_admin/ext/jquery.js} +0 -0
  298. /data/app/{assets/javascripts/active_admin/initializers/datepicker.es6 → javascript/active_admin/initializers/datepicker.js} +0 -0
  299. /data/app/{assets/javascripts/active_admin/initializers/tabs.es6 → javascript/active_admin/initializers/tabs.js} +0 -0
data/lib/active_admin.rb CHANGED
@@ -1,59 +1,58 @@
1
- require 'active_support/core_ext'
2
- require 'set'
3
-
4
- require 'ransack'
5
- require 'ransack_ext'
6
- require 'kaminari'
7
- require 'formtastic'
8
- require 'formtastic_i18n'
9
- require 'inherited_resources'
10
- require 'jquery-rails'
11
- require 'sassc-rails'
12
- require 'arbre'
13
- require 'sprockets/es6'
14
-
15
- require 'active_admin/helpers/i18n'
1
+ # frozen_string_literal: true
2
+ require "active_support/core_ext"
3
+ require "set"
4
+
5
+ require "ransack"
6
+ require "ransack_ext"
7
+ require "kaminari"
8
+ require "formtastic"
9
+ require "formtastic_i18n"
10
+ require "inherited_resources"
11
+ require "jquery-rails"
12
+ require "arbre"
13
+
14
+ require "active_admin/helpers/i18n"
16
15
 
17
16
  module ActiveAdmin
18
17
 
19
- autoload :VERSION, 'active_admin/version'
20
- autoload :Application, 'active_admin/application'
21
- autoload :AssetRegistration, 'active_admin/asset_registration'
22
- autoload :Authorization, 'active_admin/authorization_adapter'
23
- autoload :AuthorizationAdapter, 'active_admin/authorization_adapter'
24
- autoload :Callbacks, 'active_admin/callbacks'
25
- autoload :Component, 'active_admin/component'
26
- autoload :BaseController, 'active_admin/base_controller'
27
- autoload :CanCanAdapter, 'active_admin/cancan_adapter'
28
- autoload :ControllerAction, 'active_admin/controller_action'
29
- autoload :CSVBuilder, 'active_admin/csv_builder'
30
- autoload :Dependency, 'active_admin/dependency'
31
- autoload :Deprecation, 'active_admin/deprecation'
32
- autoload :Devise, 'active_admin/devise'
33
- autoload :DSL, 'active_admin/dsl'
34
- autoload :FormBuilder, 'active_admin/form_builder'
35
- autoload :Inputs, 'active_admin/inputs'
36
- autoload :Localizers, 'active_admin/localizers'
37
- autoload :Menu, 'active_admin/menu'
38
- autoload :MenuCollection, 'active_admin/menu_collection'
39
- autoload :MenuItem, 'active_admin/menu_item'
40
- autoload :Namespace, 'active_admin/namespace'
41
- autoload :OrderClause, 'active_admin/order_clause'
42
- autoload :Page, 'active_admin/page'
43
- autoload :PagePresenter, 'active_admin/page_presenter'
44
- autoload :PageController, 'active_admin/page_controller'
45
- autoload :PageDSL, 'active_admin/page_dsl'
46
- autoload :PunditAdapter, 'active_admin/pundit_adapter'
47
- autoload :Resource, 'active_admin/resource'
48
- autoload :ResourceController, 'active_admin/resource_controller'
49
- autoload :ResourceDSL, 'active_admin/resource_dsl'
50
- autoload :Scope, 'active_admin/scope'
51
- autoload :ScopeChain, 'active_admin/helpers/scope_chain'
52
- autoload :SidebarSection, 'active_admin/sidebar_section'
53
- autoload :TableBuilder, 'active_admin/table_builder'
54
- autoload :ViewFactory, 'active_admin/view_factory'
55
- autoload :ViewHelpers, 'active_admin/view_helpers'
56
- autoload :Views, 'active_admin/views'
18
+ autoload :VERSION, "active_admin/version"
19
+ autoload :Application, "active_admin/application"
20
+ autoload :AssetRegistration, "active_admin/asset_registration"
21
+ autoload :Authorization, "active_admin/authorization_adapter"
22
+ autoload :AuthorizationAdapter, "active_admin/authorization_adapter"
23
+ autoload :Callbacks, "active_admin/callbacks"
24
+ autoload :Component, "active_admin/component"
25
+ autoload :BaseController, "active_admin/base_controller"
26
+ autoload :CanCanAdapter, "active_admin/cancan_adapter"
27
+ autoload :ControllerAction, "active_admin/controller_action"
28
+ autoload :CSVBuilder, "active_admin/csv_builder"
29
+ autoload :Dependency, "active_admin/dependency"
30
+ autoload :Deprecation, "active_admin/deprecation"
31
+ autoload :Devise, "active_admin/devise"
32
+ autoload :DSL, "active_admin/dsl"
33
+ autoload :FormBuilder, "active_admin/form_builder"
34
+ autoload :Inputs, "active_admin/inputs"
35
+ autoload :Localizers, "active_admin/localizers"
36
+ autoload :Menu, "active_admin/menu"
37
+ autoload :MenuCollection, "active_admin/menu_collection"
38
+ autoload :MenuItem, "active_admin/menu_item"
39
+ autoload :Namespace, "active_admin/namespace"
40
+ autoload :OrderClause, "active_admin/order_clause"
41
+ autoload :Page, "active_admin/page"
42
+ autoload :PagePresenter, "active_admin/page_presenter"
43
+ autoload :PageController, "active_admin/page_controller"
44
+ autoload :PageDSL, "active_admin/page_dsl"
45
+ autoload :PunditAdapter, "active_admin/pundit_adapter"
46
+ autoload :Resource, "active_admin/resource"
47
+ autoload :ResourceController, "active_admin/resource_controller"
48
+ autoload :ResourceDSL, "active_admin/resource_dsl"
49
+ autoload :Scope, "active_admin/scope"
50
+ autoload :ScopeChain, "active_admin/helpers/scope_chain"
51
+ autoload :SidebarSection, "active_admin/sidebar_section"
52
+ autoload :TableBuilder, "active_admin/table_builder"
53
+ autoload :ViewFactory, "active_admin/view_factory"
54
+ autoload :ViewHelpers, "active_admin/view_helpers"
55
+ autoload :Views, "active_admin/views"
57
56
 
58
57
  class << self
59
58
 
@@ -70,11 +69,11 @@ module ActiveAdmin
70
69
  application.prepare!
71
70
  end
72
71
 
73
- delegate :register, to: :application
72
+ delegate :register, to: :application
74
73
  delegate :register_page, to: :application
75
- delegate :unload!, to: :application
76
- delegate :load!, to: :application
77
- delegate :routes, to: :application
74
+ delegate :unload!, to: :application
75
+ delegate :load!, to: :application
76
+ delegate :routes, to: :application
78
77
 
79
78
  # A callback is triggered each time (before) Active Admin loads the configuration files.
80
79
  # In development mode, this will happen whenever the user changes files. In production
@@ -114,7 +113,7 @@ module ActiveAdmin
114
113
  private
115
114
 
116
115
  def wrap_block_for_active_support_notifications block
117
- proc { |event, *args| block.call *args }
116
+ proc { |_name, _start, _finish, _id, payload| block.call payload[:active_admin_application] }
118
117
  end
119
118
 
120
119
  end
@@ -122,13 +121,13 @@ module ActiveAdmin
122
121
  end
123
122
 
124
123
  # Require things that don't support autoload
125
- require 'active_admin/engine'
126
- require 'active_admin/error'
124
+ require "active_admin/engine"
125
+ require "active_admin/error"
127
126
 
128
127
  # Require internal plugins
129
- require 'active_admin/batch_actions'
130
- require 'active_admin/filters'
128
+ require "active_admin/batch_actions"
129
+ require "active_admin/filters"
131
130
 
132
131
  # Require ORM-specific plugins
133
- require 'active_admin/orm/active_record' if defined? ActiveRecord
134
- require 'active_admin/orm/mongoid' if defined? Mongoid
132
+ require "active_admin/orm/active_record" if defined? ActiveRecord
133
+ require "active_admin/orm/mongoid" if defined? Mongoid
data/lib/activeadmin.rb CHANGED
@@ -1 +1,2 @@
1
- require 'active_admin'
1
+ # frozen_string_literal: true
2
+ require "active_admin"
@@ -1,11 +1,12 @@
1
+ # frozen_string_literal: true
1
2
  module ActiveAdmin
2
3
  module Generators
3
4
  class AssetsGenerator < Rails::Generators::Base
4
5
 
5
- source_root File.expand_path('templates', __dir__)
6
+ source_root File.expand_path("templates", __dir__)
6
7
 
7
8
  def install_assets
8
- template 'active_admin.js', 'app/assets/javascripts/active_admin.js'
9
+ template "active_admin.js", "app/assets/javascripts/active_admin.js"
9
10
  template "active_admin.scss", "app/assets/stylesheets/active_admin.scss"
10
11
  end
11
12
 
@@ -1,4 +1,4 @@
1
- // SASS variable overrides must be declared before loading up Active Admin's styles.
1
+ // Sass variable overrides must be declared before loading up Active Admin's styles.
2
2
  //
3
3
  // To view the variables that Active Admin provides, take a look at
4
4
  // `app/assets/stylesheets/active_admin/mixins/_variables.scss` in the
@@ -11,7 +11,7 @@
11
11
  @import "active_admin/mixins";
12
12
  @import "active_admin/base";
13
13
 
14
- // Overriding any non-variable SASS must be done after the fact.
14
+ // Overriding any non-variable Sass must be done after the fact.
15
15
  // For example, to change the default status-tag color:
16
16
  //
17
17
  // .status_tag { background: #6090DB; }
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require "active_admin/error"
2
3
  require "active_admin/dependency"
3
4
 
@@ -7,13 +8,13 @@ module ActiveAdmin
7
8
  desc "Creates an admin user and uses Devise for authentication"
8
9
  argument :name, type: :string, default: "AdminUser"
9
10
 
10
- class_option :registerable, type: :boolean, default: false,
11
- desc: "Should the generated resource be registerable?"
11
+ class_option :registerable, type: :boolean, default: false,
12
+ desc: "Should the generated resource be registerable?"
12
13
 
13
14
  RESERVED_NAMES = [:active_admin_user]
14
15
 
15
- class_option :default_user, type: :boolean, default: true,
16
- desc: "Should a default user be created inside the migration?"
16
+ class_option :default_user, type: :boolean, default: true,
17
+ desc: "Should a default user be created inside the migration?"
17
18
 
18
19
  def install_devise
19
20
  begin
@@ -22,7 +23,7 @@ module ActiveAdmin
22
23
  raise ActiveAdmin::GeneratorError, "#{e.message} If you don't want to use devise, run the generator with --skip-users."
23
24
  end
24
25
 
25
- require 'devise'
26
+ require "devise"
26
27
 
27
28
  initializer_file =
28
29
  File.join(destination_root, "config", "initializers", "devise.rb")
@@ -1,4 +1,5 @@
1
- require 'rails/generators/active_record'
1
+ # frozen_string_literal: true
2
+ require "rails/generators/active_record"
2
3
 
3
4
  module ActiveAdmin
4
5
  module Generators
@@ -8,22 +9,24 @@ module ActiveAdmin
8
9
 
9
10
  hook_for :users, default: "devise", desc: "Admin user generator to run. Skip with --skip-users"
10
11
  class_option :skip_comments, type: :boolean, default: false, desc: "Skip installation of comments"
12
+ class_option :use_webpacker, type: :boolean, default: false, desc: "Use Webpacker assets instead of Sprockets"
11
13
 
12
- source_root File.expand_path('templates', __dir__)
14
+ source_root File.expand_path("templates", __dir__)
13
15
 
14
16
  def copy_initializer
15
- @underscored_user_name = name.underscore.gsub('/', '_')
17
+ @underscored_user_name = name.underscore.gsub("/", "_")
16
18
  @use_authentication_method = options[:users].present?
17
19
  @skip_comments = options[:skip_comments]
18
- template 'active_admin.rb.erb', 'config/initializers/active_admin.rb'
20
+ @use_webpacker = options[:use_webpacker]
21
+ template "active_admin.rb.erb", "config/initializers/active_admin.rb"
19
22
  end
20
23
 
21
24
  def setup_directory
22
25
  empty_directory "app/admin"
23
- template 'dashboard.rb', 'app/admin/dashboard.rb'
26
+ template "dashboard.rb", "app/admin/dashboard.rb"
24
27
  if options[:users].present?
25
28
  @user_class = name
26
- template 'admin_users.rb.erb', "app/admin/#{name.underscore.pluralize}.rb"
29
+ template "admin_users.rb.erb", "app/admin/#{name.underscore.pluralize}.rb"
27
30
  end
28
31
  end
29
32
 
@@ -36,12 +39,16 @@ module ActiveAdmin
36
39
  end
37
40
 
38
41
  def create_assets
39
- generate "active_admin:assets"
42
+ if options[:use_webpacker]
43
+ generate "active_admin:webpacker"
44
+ else
45
+ generate "active_admin:assets"
46
+ end
40
47
  end
41
48
 
42
49
  def create_migrations
43
50
  unless options[:skip_comments]
44
- migration_template 'migrations/create_active_admin_comments.rb.erb', 'db/migrate/create_active_admin_comments.rb'
51
+ migration_template "migrations/create_active_admin_comments.rb.erb", "db/migrate/create_active_admin_comments.rb"
45
52
  end
46
53
  end
47
54
  end
@@ -18,6 +18,23 @@ ActiveAdmin.setup do |config|
18
18
  #
19
19
  # config.site_title_image = "logo.png"
20
20
 
21
+ # == Load Paths
22
+ #
23
+ # By default Active Admin files go inside app/admin/.
24
+ # You can change this directory.
25
+ #
26
+ # eg:
27
+ # config.load_paths = [File.join(Rails.root, 'app', 'ui')]
28
+ #
29
+ # Or, you can also load more directories.
30
+ # Useful when setting namespaces with users that are not your main AdminUser entity.
31
+ #
32
+ # eg:
33
+ # config.load_paths = [
34
+ # File.join(Rails.root, 'app', 'admin'),
35
+ # File.join(Rails.root, 'app', 'cashier')
36
+ # ]
37
+
21
38
  # == Default Namespace
22
39
  #
23
40
  # Set the default namespace each administration resource
@@ -286,12 +303,25 @@ ActiveAdmin.setup do |config|
286
303
  # config.filters = true
287
304
  #
288
305
  # By default the filters include associations in a select, which means
289
- # that every record will be loaded for each association.
306
+ # that every record will be loaded for each association (up
307
+ # to the value of config.maximum_association_filter_arity).
290
308
  # You can enabled or disable the inclusion
291
309
  # of those filters by default here.
292
310
  #
293
311
  # config.include_default_association_filters = true
294
312
 
313
+ # config.maximum_association_filter_arity = 256 # default value of :unlimited will change to 256 in a future version
314
+ # config.filter_columns_for_large_association = [
315
+ # :display_name,
316
+ # :full_name,
317
+ # :name,
318
+ # :username,
319
+ # :login,
320
+ # :title,
321
+ # :email,
322
+ # ]
323
+ # config.filter_method_for_large_association = '_starts_with'
324
+
295
325
  # == Head
296
326
  #
297
327
  # You can add your own content to the site head like analytics. Make sure
@@ -312,4 +342,11 @@ ActiveAdmin.setup do |config|
312
342
  # You can inherit it with own class and inject it for all resources
313
343
  #
314
344
  # config.order_clause = MyOrderClause
345
+
346
+ # == Webpacker
347
+ #
348
+ # By default, Active Admin uses Sprocket's asset pipeline.
349
+ # You can switch to using Webpacker here.
350
+ #
351
+ <% unless @use_webpacker %># <% end %>config.use_webpacker = true
315
352
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  ActiveAdmin.register_page "Dashboard" do
2
3
  menu priority: 1, label: proc { I18n.t("active_admin.dashboard") }
3
4
 
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module ActiveAdmin
2
3
  module Generators
3
4
  class PageGenerator < Rails::Generators::NamedBase
4
- source_root File.expand_path('templates', __dir__)
5
+ source_root File.expand_path("templates", __dir__)
5
6
 
6
7
  def generate_config_file
7
8
  template "page.rb", "app/admin/#{file_path.tr('/', '_')}.rb"
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  ActiveAdmin.register_page "<%= class_name %>" do
2
3
  content do
3
4
  # your content
@@ -1,4 +1,5 @@
1
- require 'active_admin/generators/boilerplate'
1
+ # frozen_string_literal: true
2
+ require "active_admin/generators/boilerplate"
2
3
 
3
4
  module ActiveAdmin
4
5
  module Generators
@@ -6,9 +7,9 @@ module ActiveAdmin
6
7
  desc "Registers resources with Active Admin"
7
8
 
8
9
  class_option :include_boilerplate, type: :boolean, default: false,
9
- desc: "Generate boilerplate code for your resource."
10
+ desc: "Generate boilerplate code for your resource."
10
11
 
11
- source_root File.expand_path('templates', __dir__)
12
+ source_root File.expand_path("templates", __dir__)
12
13
 
13
14
  def generate_config_file
14
15
  @boilerplate = ActiveAdmin::Generators::Boilerplate.new(class_name)
@@ -3,12 +3,14 @@ ActiveAdmin.register <%= class_name %> do
3
3
  # See permitted parameters documentation:
4
4
  # https://github.com/activeadmin/activeadmin/blob/master/docs/2-resource-customization.md#setting-up-strong-parameters
5
5
  #
6
- # permit_params :list, :of, :attributes, :on, :model
6
+ # Uncomment all parameters which should be permitted for assignment
7
+ #
8
+ # permit_params <%= @boilerplate.permit_params %>
7
9
  #
8
10
  # or
9
11
  #
10
12
  # permit_params do
11
- # permitted = [:permitted, :attributes]
13
+ # permitted = [<%= @boilerplate.permit_params %>]
12
14
  # permitted << :other if params[:action] == 'create' && current_user.admin?
13
15
  # permitted
14
16
  # end
@@ -0,0 +1,7 @@
1
+ const webpack = require('webpack')
2
+
3
+ module.exports = new webpack.ProvidePlugin({
4
+ "$":"jquery",
5
+ "jQuery":"jquery",
6
+ "window.jQuery":"jquery"
7
+ });
@@ -0,0 +1,5 @@
1
+ // Load Active Admin's styles into Webpacker,
2
+ // see `active_admin.scss` for customization.
3
+ import "../stylesheets/active_admin";
4
+
5
+ import "@activeadmin/activeadmin";
@@ -0,0 +1,17 @@
1
+ // Sass variable overrides must be declared before loading up Active Admin's styles.
2
+ //
3
+ // To view the variables that Active Admin provides, take a look at
4
+ // `app/assets/stylesheets/active_admin/mixins/_variables.scss` in the
5
+ // Active Admin source.
6
+ //
7
+ // For example, to change the sidebar width:
8
+ // $sidebar-width: 242px;
9
+
10
+ // Active Admin's got SASS!
11
+ @import "~@activeadmin/activeadmin/src/scss/mixins";
12
+ @import "~@activeadmin/activeadmin/src/scss/base";
13
+
14
+ // Overriding any non-variable Sass must be done after the fact.
15
+ // For example, to change the default status-tag color:
16
+ //
17
+ // .status_tag { background: #6090DB; }
@@ -0,0 +1,2 @@
1
+ /* Active Admin Print Stylesheet */
2
+ @import "~@activeadmin/activeadmin/src/scss/print";
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Generators
4
+ class WebpackerGenerator < Rails::Generators::Base
5
+
6
+ source_root File.expand_path("templates", __dir__)
7
+
8
+ def install_assets
9
+ template "active_admin.js", "app/javascript/packs/active_admin.js"
10
+ template "active_admin.scss", "app/javascript/stylesheets/active_admin.scss"
11
+ template "print.scss", "app/javascript/packs/active_admin/print.scss"
12
+
13
+ copy_file "#{__dir__}/plugins/jquery.js", Rails.root.join("config/webpack/plugins/jquery.js").to_s
14
+
15
+ insert_into_file Rails.root.join("config/webpack/environment.js").to_s,
16
+ "const jquery = require('./plugins/jquery')\n",
17
+ after: /require\(('|")@rails\/webpacker\1\);?\n/
18
+
19
+ insert_into_file Rails.root.join("config/webpack/environment.js").to_s,
20
+ "environment.plugins.prepend('jquery', jquery)\n",
21
+ before: "module.exports"
22
+
23
+ run "yarn add @activeadmin/activeadmin"
24
+ end
25
+ end
26
+ end
27
+ end
data/lib/ransack_ext.rb CHANGED
@@ -1,20 +1,21 @@
1
+ # frozen_string_literal: true
1
2
  # This sets up aliases for old Metasearch query methods so they behave
2
3
  # identically to the versions given in Ransack.
3
4
  #
4
5
  Ransack.configure do |config|
5
- { 'contains' => 'cont', 'starts_with' => 'start', 'ends_with' => 'end' }.each do |old, current|
6
+ { "contains" => "cont", "starts_with" => "start", "ends_with" => "end" }.each do |old, current|
6
7
  config.add_predicate old, Ransack::Constants::DERIVED_PREDICATES.detect { |q, _| q == current }[1]
7
8
  end
8
9
 
9
- { 'equals' => 'eq', 'greater_than' => 'gt', 'less_than' => 'lt' }.each do |old, current|
10
+ { "equals" => "eq", "greater_than" => "gt", "less_than" => "lt" }.each do |old, current|
10
11
  config.add_predicate old, arel_predicate: current
11
12
  end
12
13
 
13
- config.add_predicate 'gteq_datetime',
14
- arel_predicate: 'gteq',
15
- formatter: ->(v) { v.beginning_of_day }
14
+ config.add_predicate "gteq_datetime",
15
+ arel_predicate: "gteq",
16
+ formatter: ->(v) { v.beginning_of_day }
16
17
 
17
- config.add_predicate 'lteq_datetime',
18
- arel_predicate: 'lt',
19
- formatter: ->(v) { v + 1.day }
18
+ config.add_predicate "lteq_datetime",
19
+ arel_predicate: "lt",
20
+ formatter: ->(v) { v + 1.day }
20
21
  end