activeadmin 2.1.0 → 2.5.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 (138) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +112 -27
  3. data/CONTRIBUTING.md +50 -26
  4. data/README.md +8 -1
  5. data/app/assets/javascripts/active_admin/base.js +509 -0
  6. data/app/assets/stylesheets/active_admin/_base.scss +29 -29
  7. data/app/assets/stylesheets/active_admin/_header.scss +3 -5
  8. data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
  9. data/{vendor → app}/assets/stylesheets/active_admin/_normalize.scss +0 -0
  10. data/app/assets/stylesheets/active_admin/components/_tables.scss +1 -2
  11. data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -8
  12. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +5 -0
  13. data/app/assets/stylesheets/active_admin/print.scss +2 -2
  14. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
  15. data/app/javascript/active_admin/base.js +19 -0
  16. data/app/{assets/javascripts/active_admin/ext/jquery-ui.es6 → javascript/active_admin/ext/jquery-ui.js} +0 -0
  17. data/app/{assets/javascripts/active_admin/ext/jquery.es6 → javascript/active_admin/ext/jquery.js} +0 -0
  18. data/app/{assets/javascripts/active_admin/lib/batch_actions.es6 → javascript/active_admin/initializers/batch-actions.js} +9 -3
  19. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  20. data/app/{assets/javascripts/active_admin/initializers/datepicker.es6 → javascript/active_admin/initializers/datepicker.js} +0 -0
  21. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  22. data/app/javascript/active_admin/initializers/filters.js +10 -0
  23. data/app/{assets/javascripts/active_admin/lib/has_many.es6 → javascript/active_admin/initializers/has-many.js} +0 -0
  24. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  25. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  26. data/app/{assets/javascripts/active_admin/initializers/tabs.es6 → javascript/active_admin/initializers/tabs.js} +0 -0
  27. data/app/{assets/javascripts/active_admin/lib/checkbox-toggler.es6 → javascript/active_admin/lib/checkbox-toggler.js} +2 -2
  28. data/app/{assets/javascripts/active_admin/lib/dropdown-menu.es6 → javascript/active_admin/lib/dropdown-menu.js} +2 -9
  29. data/app/javascript/active_admin/lib/filters.js +39 -0
  30. data/app/{assets/javascripts/active_admin/lib/modal_dialog.es6 → javascript/active_admin/lib/modal-dialog.js} +3 -1
  31. data/app/javascript/active_admin/lib/per-page.js +38 -0
  32. data/app/{assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 → javascript/active_admin/lib/table-checkbox-toggler.js} +4 -2
  33. data/app/javascript/active_admin/lib/utils.js +40 -0
  34. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  35. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  36. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  37. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  38. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  39. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  40. data/config/locales/ar.yml +3 -2
  41. data/config/locales/az.yml +138 -0
  42. data/config/locales/bg.yml +1 -0
  43. data/config/locales/bs.yml +1 -0
  44. data/config/locales/ca.yml +1 -1
  45. data/config/locales/cs.yml +1 -0
  46. data/config/locales/da.yml +1 -0
  47. data/config/locales/de-CH.yml +1 -0
  48. data/config/locales/de.yml +19 -0
  49. data/config/locales/el.yml +1 -0
  50. data/config/locales/en-CA.yml +1 -0
  51. data/config/locales/en-GB.yml +1 -0
  52. data/config/locales/en.yml +1 -0
  53. data/config/locales/eo.yml +1 -0
  54. data/config/locales/es-MX.yml +1 -0
  55. data/config/locales/es.yml +1 -0
  56. data/config/locales/fa.yml +1 -0
  57. data/config/locales/fi.yml +1 -0
  58. data/config/locales/fr.yml +2 -1
  59. data/config/locales/he.yml +1 -0
  60. data/config/locales/hr.yml +1 -0
  61. data/config/locales/hu.yml +1 -0
  62. data/config/locales/id.yml +1 -0
  63. data/config/locales/it.yml +1 -0
  64. data/config/locales/ja.yml +1 -0
  65. data/config/locales/ko.yml +1 -0
  66. data/config/locales/lt.yml +1 -0
  67. data/config/locales/lv.yml +1 -0
  68. data/config/locales/mk.yml +134 -0
  69. data/config/locales/nb.yml +1 -0
  70. data/config/locales/nl.yml +1 -0
  71. data/config/locales/pl.yml +1 -0
  72. data/config/locales/pt-BR.yml +1 -0
  73. data/config/locales/pt-PT.yml +1 -0
  74. data/config/locales/ro.yml +1 -0
  75. data/config/locales/ru.yml +1 -0
  76. data/config/locales/sk.yml +60 -0
  77. data/config/locales/sv-SE.yml +1 -0
  78. data/config/locales/tr.yml +1 -0
  79. data/config/locales/uk.yml +1 -0
  80. data/config/locales/vi.yml +1 -0
  81. data/config/locales/zh-CN.yml +1 -0
  82. data/config/locales/zh-TW.yml +1 -0
  83. data/docs/1-general-configuration.md +20 -0
  84. data/docs/12-arbre-components.md +13 -0
  85. data/docs/13-authorization-adapter.md +2 -2
  86. data/docs/2-resource-customization.md +1 -1
  87. data/docs/3-index-pages/index-as-table.md +7 -0
  88. data/docs/Gemfile +0 -1
  89. data/docs/Gemfile.lock +58 -58
  90. data/docs/_config.yml +2 -0
  91. data/docs/_includes/top-menu.html +2 -2
  92. data/docs/index.html +108 -7
  93. data/docs/stylesheets/main.css +29 -0
  94. data/lib/active_admin.rb +0 -1
  95. data/lib/active_admin/application.rb +12 -3
  96. data/lib/active_admin/batch_actions/resource_extension.rb +5 -1
  97. data/lib/active_admin/controller_action.rb +2 -1
  98. data/lib/active_admin/csv_builder.rb +3 -2
  99. data/lib/active_admin/dependency.rb +0 -4
  100. data/lib/active_admin/error.rb +3 -1
  101. data/lib/active_admin/filters/active_filter.rb +3 -4
  102. data/lib/active_admin/filters/resource_extension.rb +24 -0
  103. data/lib/active_admin/generators/boilerplate.rb +12 -4
  104. data/lib/active_admin/inputs/filters/date_range_input.rb +4 -4
  105. data/lib/active_admin/namespace_settings.rb +13 -0
  106. data/lib/active_admin/order_clause.rb +1 -1
  107. data/lib/active_admin/page_presenter.rb +2 -1
  108. data/lib/active_admin/pundit_adapter.rb +7 -3
  109. data/lib/active_admin/resource.rb +16 -2
  110. data/lib/active_admin/resource/belongs_to.rb +6 -1
  111. data/lib/active_admin/resource/model.rb +15 -0
  112. data/lib/active_admin/resource/routes.rb +11 -3
  113. data/lib/active_admin/resource_controller.rb +2 -0
  114. data/lib/active_admin/resource_controller/decorators.rb +2 -2
  115. data/lib/active_admin/resource_controller/polymorphic_routes.rb +37 -0
  116. data/lib/active_admin/router.rb +2 -1
  117. data/lib/active_admin/scope.rb +7 -3
  118. data/lib/active_admin/sidebar_section.rb +3 -1
  119. data/lib/active_admin/version.rb +1 -1
  120. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +2 -2
  121. data/lib/active_admin/view_helpers/display_helper.rb +3 -2
  122. data/lib/active_admin/views/components/paginated_collection.rb +3 -2
  123. data/lib/active_admin/views/components/status_tag.rb +5 -1
  124. data/lib/active_admin/views/components/table_for.rb +1 -0
  125. data/lib/active_admin/views/index_as_table.rb +7 -0
  126. data/lib/active_admin/views/pages/base.rb +1 -1
  127. data/lib/active_admin/views/pages/index.rb +1 -0
  128. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +14 -1
  129. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  130. data/lib/ransack_ext.rb +2 -2
  131. metadata +38 -45
  132. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  133. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  134. data/app/assets/images/active_admin/orderable.png +0 -0
  135. data/app/assets/javascripts/active_admin/base.es6 +0 -23
  136. data/app/assets/javascripts/active_admin/initializers/filters.es6 +0 -45
  137. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +0 -41
  138. data/app/assets/javascripts/active_admin/lib/per_page.es6 +0 -47
@@ -1,23 +0,0 @@
1
- //= require jquery3
2
- //= require jquery-ui/widgets/datepicker
3
- //= require jquery-ui/widgets/dialog
4
- //= require jquery-ui/widgets/sortable
5
- //= require jquery-ui/widgets/tabs
6
- //= require jquery-ui/widget
7
- //= require jquery_ujs
8
- //= require_self
9
- //= require ./ext/jquery
10
- //= require ./ext/jquery-ui
11
- //= require ./lib/active_admin
12
- //= require ./lib/batch_actions
13
- //= require ./lib/dropdown-menu
14
- //= require ./lib/has_many
15
- //= require ./lib/modal_dialog
16
- //= require ./lib/per_page
17
- //= require ./lib/checkbox-toggler
18
- //= require ./lib/table-checkbox-toggler
19
- //= require ./initializers/datepicker
20
- //= require ./initializers/filters
21
- //= require ./initializers/tabs
22
-
23
- window.ActiveAdmin = {}
@@ -1,45 +0,0 @@
1
- (($, ActiveAdmin) => {
2
-
3
- class Filters {
4
-
5
- static _clearForm(event) {
6
- const regex = /^(q\[|q%5B|q%5b|page|utf8|commit)/;
7
- const params = ActiveAdmin
8
- .queryStringToParams()
9
- .filter(({name}) => !name.match(regex));
10
-
11
- event.preventDefault();
12
-
13
- if (ActiveAdmin.turbolinks) {
14
- ActiveAdmin.turbolinksVisit(params);
15
- } else {
16
- window.location.search = ActiveAdmin.toQueryString(params);
17
- }
18
- }
19
-
20
- static _disableEmptyInputFields(event) {
21
- const params = $(this)
22
- .find(':input')
23
- .filter((i, input) => input.value === '')
24
- .prop({ disabled: true })
25
- .end()
26
- .serializeArray();
27
-
28
- if (ActiveAdmin.turbolinks) {
29
- event.preventDefault();
30
- ActiveAdmin.turbolinksVisit(params);
31
- }
32
- }
33
-
34
- static _setSearchType() {
35
- $(this).siblings('input').prop({name: `q[${this.value}]`});
36
- }
37
-
38
- }
39
-
40
- $(document).
41
- on('click', '.clear_filters_btn', Filters._clearForm).
42
- on('submit', '.filter_form', Filters._disableEmptyInputFields).
43
- on('change', '.filter_form_field.select_and_search select', Filters._setSearchType);
44
-
45
- })(jQuery, window.activeadmin);
@@ -1,41 +0,0 @@
1
- ((window, $) => {
2
-
3
- class ActiveAdmin {
4
-
5
- static get turbolinks() {
6
- return (typeof Turbolinks !== 'undefined' && Turbolinks.supported);
7
- }
8
-
9
- static turbolinksVisit(params) {
10
- const path = [window.location.pathname, '?', this.toQueryString(params)].join('')
11
- Turbolinks.visit(path);
12
- }
13
-
14
- static queryString() {
15
- return (window.location.search || '').replace(/^\?/, '');
16
- }
17
-
18
- static queryStringToParams() {
19
- const decode = (value) => decodeURIComponent((value || '').replace(/\+/g, '%20'));
20
-
21
- return this.queryString()
22
- .split("&")
23
- .map(pair => pair.split("="))
24
- .map(([key, value]) => {
25
- return { name: decode(key), value: decode(value) }
26
- });
27
- }
28
-
29
- static toQueryString(params) {
30
- const encode = (value) => encodeURIComponent(value || '');
31
-
32
- return params
33
- .map(({name, value}) => [ encode(name), encode(value) ])
34
- .map(pair => pair.join('='))
35
- .join('&')
36
- }
37
- }
38
-
39
- window.activeadmin = ActiveAdmin
40
-
41
- })(window, jQuery);
@@ -1,47 +0,0 @@
1
- (($, ActiveAdmin) => {
2
-
3
- class PerPage {
4
- constructor(element) {
5
- this.element = element;
6
- }
7
-
8
- update() {
9
- const params = ActiveAdmin
10
- .queryStringToParams()
11
- .filter(({name}) => name != 'per_page' || name != 'page')
12
-
13
- params.push({ name: 'per_page', value: this.element.value });
14
-
15
- if (ActiveAdmin.turbolinks) {
16
- ActiveAdmin.turbolinksVisit(params);
17
- } else {
18
- window.location.search = ActiveAdmin.toQueryString(params);
19
- }
20
- }
21
-
22
- static _jQueryInterface(config) {
23
- return this.each(function () {
24
- const $this = $(this)
25
- let data = $this.data('perPage')
26
-
27
- if (!data) {
28
- data = new PerPage(this)
29
- $this.data('perPage', data)
30
- }
31
-
32
- if (config === 'update') {
33
- data[config]()
34
- }
35
- })
36
- }
37
- };
38
-
39
- $(document).
40
- on('change', '.pagination_per_page > select', function(event) {
41
- PerPage._jQueryInterface.call($(this), 'update')
42
- });
43
-
44
- $.fn['perPage'] = PerPage._jQueryInterface
45
- $.fn['perPage'].Constructor = PerPage
46
-
47
- })(jQuery, window.activeadmin);