activeadmin 2.6.1 → 2.13.1

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 (229) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +291 -9
  3. data/CONTRIBUTING.md +9 -25
  4. data/README.md +4 -4
  5. data/app/assets/javascripts/active_admin/base.js +27 -22
  6. data/app/assets/stylesheets/active_admin/_base.scss +53 -37
  7. data/app/assets/stylesheets/active_admin/_forms.scss +0 -10
  8. data/app/assets/stylesheets/active_admin/_header.scss +37 -3
  9. data/app/assets/stylesheets/active_admin/_normalize.scss +25 -123
  10. data/app/assets/stylesheets/active_admin/{print.scss → _print.scss} +0 -0
  11. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  12. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +1 -2
  13. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +0 -1
  14. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +12 -0
  15. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -1
  16. data/app/javascript/active_admin/initializers/has-many.js +4 -1
  17. data/app/javascript/active_admin/initializers/per-page.js +1 -1
  18. data/app/javascript/active_admin/lib/checkbox-toggler.js +3 -3
  19. data/app/javascript/active_admin/lib/dropdown-menu.js +1 -1
  20. data/app/javascript/active_admin/lib/modal-dialog.js +7 -7
  21. data/app/javascript/active_admin/lib/per-page.js +1 -1
  22. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +1 -1
  23. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  24. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  25. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  26. data/app/views/active_admin/page/index.html.arb +1 -0
  27. data/app/views/active_admin/resource/edit.html.arb +1 -0
  28. data/app/views/active_admin/resource/index.html.arb +1 -0
  29. data/app/views/active_admin/resource/new.html.arb +1 -0
  30. data/app/views/active_admin/resource/show.html.arb +1 -0
  31. data/app/views/layouts/active_admin.html.arb +1 -0
  32. data/app/views/layouts/active_admin_logged_out.html.erb +15 -5
  33. data/config/locales/ar.yml +6 -6
  34. data/config/locales/es-MX.yml +2 -1
  35. data/config/locales/es.yml +2 -2
  36. data/config/locales/it.yml +18 -0
  37. data/config/locales/ja.yml +3 -3
  38. data/config/locales/ko.yml +1 -1
  39. data/config/locales/nl.yml +1 -1
  40. data/config/locales/ro.yml +3 -2
  41. data/config/locales/vi.yml +5 -5
  42. data/docs/0-installation.md +27 -3
  43. data/docs/11-decorators.md +16 -5
  44. data/docs/2-resource-customization.md +10 -1
  45. data/docs/5-forms.md +9 -3
  46. data/docs/6-show-pages.md +12 -0
  47. data/docs/8-custom-actions.md +1 -1
  48. data/docs/Gemfile +3 -2
  49. data/docs/Gemfile.lock +138 -103
  50. data/docs/_includes/top-menu.html +1 -1
  51. data/docs/documentation.md +1 -1
  52. data/docs/index.html +6 -6
  53. data/lib/active_admin/abstract_view_factory.rb +1 -0
  54. data/lib/active_admin/application.rb +19 -19
  55. data/lib/active_admin/application_settings.rb +4 -3
  56. data/lib/active_admin/asset_registration.rb +1 -0
  57. data/lib/active_admin/authorization_adapter.rb +4 -3
  58. data/lib/active_admin/base_controller/authorization.rb +15 -13
  59. data/lib/active_admin/base_controller/menu.rb +1 -0
  60. data/lib/active_admin/base_controller.rb +6 -5
  61. data/lib/active_admin/batch_actions/controller.rb +4 -3
  62. data/lib/active_admin/batch_actions/resource_extension.rb +10 -8
  63. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  64. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  65. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  66. data/lib/active_admin/batch_actions.rb +1 -0
  67. data/lib/active_admin/callbacks.rb +1 -0
  68. data/lib/active_admin/cancan_adapter.rb +2 -1
  69. data/lib/active_admin/collection_decorator.rb +32 -0
  70. data/lib/active_admin/component.rb +1 -0
  71. data/lib/active_admin/controller_action.rb +1 -0
  72. data/lib/active_admin/csv_builder.rb +6 -19
  73. data/lib/active_admin/dependency.rb +13 -12
  74. data/lib/active_admin/deprecation.rb +1 -0
  75. data/lib/active_admin/devise.rb +16 -5
  76. data/lib/active_admin/dsl.rb +2 -1
  77. data/lib/active_admin/dynamic_setting.rb +1 -0
  78. data/lib/active_admin/dynamic_settings_node.rb +3 -2
  79. data/lib/active_admin/engine.rb +13 -9
  80. data/lib/active_admin/error.rb +1 -2
  81. data/lib/active_admin/filters/active.rb +2 -1
  82. data/lib/active_admin/filters/active_filter.rb +6 -6
  83. data/lib/active_admin/filters/active_sidebar.rb +4 -30
  84. data/lib/active_admin/filters/dsl.rb +1 -0
  85. data/lib/active_admin/filters/forms.rb +7 -6
  86. data/lib/active_admin/filters/formtastic_addons.rb +2 -6
  87. data/lib/active_admin/filters/resource_extension.rb +2 -1
  88. data/lib/active_admin/filters.rb +8 -7
  89. data/lib/active_admin/form_builder.rb +25 -20
  90. data/lib/active_admin/generators/boilerplate.rb +2 -1
  91. data/lib/active_admin/helpers/collection.rb +2 -0
  92. data/lib/active_admin/helpers/i18n.rb +1 -0
  93. data/lib/active_admin/helpers/optional_display.rb +3 -2
  94. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  95. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  96. data/lib/active_admin/inputs/datepicker_input.rb +2 -1
  97. data/lib/active_admin/inputs/filters/base/search_method_select.rb +5 -4
  98. data/lib/active_admin/inputs/filters/base.rb +2 -1
  99. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  100. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  101. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  102. data/lib/active_admin/inputs/filters/date_range_input.rb +1 -0
  103. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  104. data/lib/active_admin/inputs/filters/select_input.rb +3 -2
  105. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  106. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  107. data/lib/active_admin/inputs.rb +1 -0
  108. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  109. data/lib/active_admin/localizers.rb +2 -1
  110. data/lib/active_admin/menu.rb +7 -3
  111. data/lib/active_admin/menu_collection.rb +1 -0
  112. data/lib/active_admin/menu_item.rb +8 -7
  113. data/lib/active_admin/namespace.rb +15 -14
  114. data/lib/active_admin/namespace_settings.rb +9 -5
  115. data/lib/active_admin/order_clause.rb +2 -1
  116. data/lib/active_admin/orm/active_record/comments/comment.rb +4 -3
  117. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  118. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  119. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  120. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +20 -19
  121. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  122. data/lib/active_admin/orm/active_record/comments.rb +20 -19
  123. data/lib/active_admin/orm/active_record.rb +2 -1
  124. data/lib/active_admin/orm/mongoid.rb +1 -0
  125. data/lib/active_admin/page.rb +2 -1
  126. data/lib/active_admin/page_controller.rb +1 -0
  127. data/lib/active_admin/page_dsl.rb +1 -0
  128. data/lib/active_admin/page_presenter.rb +1 -0
  129. data/lib/active_admin/pundit_adapter.rb +59 -15
  130. data/lib/active_admin/resource/action_items.rb +6 -5
  131. data/lib/active_admin/resource/attributes.rb +2 -1
  132. data/lib/active_admin/resource/belongs_to.rb +3 -2
  133. data/lib/active_admin/resource/controllers.rb +2 -1
  134. data/lib/active_admin/resource/includes.rb +1 -0
  135. data/lib/active_admin/resource/menu.rb +5 -4
  136. data/lib/active_admin/resource/model.rb +1 -0
  137. data/lib/active_admin/resource/naming.rb +5 -4
  138. data/lib/active_admin/resource/ordering.rb +1 -0
  139. data/lib/active_admin/resource/page_presenters.rb +1 -0
  140. data/lib/active_admin/resource/pagination.rb +1 -0
  141. data/lib/active_admin/resource/routes.rb +6 -7
  142. data/lib/active_admin/resource/scope_to.rb +8 -7
  143. data/lib/active_admin/resource/scopes.rb +1 -0
  144. data/lib/active_admin/resource/sidebars.rb +2 -1
  145. data/lib/active_admin/resource.rb +20 -19
  146. data/lib/active_admin/resource_collection.rb +1 -0
  147. data/lib/active_admin/resource_controller/action_builder.rb +1 -0
  148. data/lib/active_admin/resource_controller/data_access.rb +31 -5
  149. data/lib/active_admin/resource_controller/decorators.rb +7 -28
  150. data/lib/active_admin/resource_controller/polymorphic_routes.rb +1 -0
  151. data/lib/active_admin/resource_controller/resource_class_methods.rb +1 -0
  152. data/lib/active_admin/resource_controller/scoping.rb +1 -0
  153. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  154. data/lib/active_admin/resource_controller/streaming.rb +9 -7
  155. data/lib/active_admin/resource_controller.rb +13 -11
  156. data/lib/active_admin/resource_dsl.rb +11 -25
  157. data/lib/active_admin/router.rb +1 -0
  158. data/lib/active_admin/scope.rb +7 -6
  159. data/lib/active_admin/settings_node.rb +1 -0
  160. data/lib/active_admin/sidebar_section.rb +1 -0
  161. data/lib/active_admin/version.rb +2 -1
  162. data/lib/active_admin/view_factory.rb +18 -17
  163. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  164. data/lib/active_admin/view_helpers/auto_link_helper.rb +1 -0
  165. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +4 -3
  166. data/lib/active_admin/view_helpers/display_helper.rb +15 -7
  167. data/lib/active_admin/view_helpers/download_format_links_helper.rb +2 -1
  168. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  169. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  170. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  171. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +1 -0
  172. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  173. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  174. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  175. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  176. data/lib/active_admin/view_helpers.rb +2 -1
  177. data/lib/active_admin/views/action_items.rb +1 -0
  178. data/lib/active_admin/views/components/active_admin_form.rb +7 -6
  179. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  180. data/lib/active_admin/views/components/attributes_table.rb +6 -5
  181. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  182. data/lib/active_admin/views/components/columns.rb +1 -0
  183. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  184. data/lib/active_admin/views/components/index_list.rb +4 -3
  185. data/lib/active_admin/views/components/menu.rb +2 -1
  186. data/lib/active_admin/views/components/menu_item.rb +5 -4
  187. data/lib/active_admin/views/components/paginated_collection.rb +19 -18
  188. data/lib/active_admin/views/components/panel.rb +2 -1
  189. data/lib/active_admin/views/components/scopes.rb +8 -5
  190. data/lib/active_admin/views/components/sidebar.rb +1 -0
  191. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  192. data/lib/active_admin/views/components/site_title.rb +2 -1
  193. data/lib/active_admin/views/components/status_tag.rb +12 -11
  194. data/lib/active_admin/views/components/table_for.rb +18 -17
  195. data/lib/active_admin/views/components/tabs.rb +4 -3
  196. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  197. data/lib/active_admin/views/footer.rb +3 -1
  198. data/lib/active_admin/views/header.rb +3 -2
  199. data/lib/active_admin/views/index_as_block.rb +1 -0
  200. data/lib/active_admin/views/index_as_blog.rb +2 -1
  201. data/lib/active_admin/views/index_as_grid.rb +2 -1
  202. data/lib/active_admin/views/index_as_table.rb +17 -16
  203. data/lib/active_admin/views/pages/base.rb +14 -9
  204. data/lib/active_admin/views/pages/form.rb +1 -0
  205. data/lib/active_admin/views/pages/index.rb +15 -13
  206. data/lib/active_admin/views/pages/layout.rb +1 -0
  207. data/lib/active_admin/views/pages/page.rb +1 -0
  208. data/lib/active_admin/views/pages/show.rb +1 -0
  209. data/lib/active_admin/views/tabbed_navigation.rb +3 -2
  210. data/lib/active_admin/views/title_bar.rb +2 -1
  211. data/lib/active_admin/views.rb +2 -1
  212. data/lib/active_admin.rb +61 -61
  213. data/lib/activeadmin.rb +2 -1
  214. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  215. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  216. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  217. data/lib/generators/active_admin/install/install_generator.rb +15 -8
  218. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +9 -2
  219. data/lib/generators/active_admin/install/templates/dashboard.rb +1 -0
  220. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  221. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  222. data/lib/generators/active_admin/resource/resource_generator.rb +4 -3
  223. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  224. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  225. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  226. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  227. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  228. data/lib/ransack_ext.rb +9 -8
  229. metadata +32 -53
@@ -11,7 +11,7 @@
11
11
  //= require_self
12
12
 
13
13
  (function(global, factory) {
14
- typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("jquery"), require("jquery-ui/ui/widgets/datepicker"), require("jquery-ui/ui/widgets/dialog"), require("jquery-ui/ui/widgets/sortable"), require("jquery-ui/ui/widgets/tabs"), require("jquery-ui/ui/widget"), require("jquery-ujs")) : typeof define === "function" && define.amd ? define([ "exports", "jquery", "jquery-ui/ui/widgets/datepicker", "jquery-ui/ui/widgets/dialog", "jquery-ui/ui/widgets/sortable", "jquery-ui/ui/widgets/tabs", "jquery-ui/ui/widget", "jquery-ujs" ], factory) : (global = global || self,
14
+ typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("jquery"), require("jquery-ui/ui/widgets/datepicker"), require("jquery-ui/ui/widgets/dialog"), require("jquery-ui/ui/widgets/sortable"), require("jquery-ui/ui/widgets/tabs"), require("jquery-ui/ui/widget"), require("jquery-ujs")) : typeof define === "function" && define.amd ? define([ "exports", "jquery", "jquery-ui/ui/widgets/datepicker", "jquery-ui/ui/widgets/dialog", "jquery-ui/ui/widgets/sortable", "jquery-ui/ui/widgets/tabs", "jquery-ui/ui/widget", "jquery-ujs" ], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self,
15
15
  factory(global.ActiveAdmin = {}));
16
16
  })(this, function(exports) {
17
17
  "use strict";
@@ -27,18 +27,17 @@
27
27
  function ModalDialog(message, inputs, callback) {
28
28
  var html = '<form id="dialog_confirm" title="' + message + '"><ul>';
29
29
  for (var name in inputs) {
30
- var elem, opts, wrapper;
30
+ var opts, wrapper;
31
31
  var type = inputs[name];
32
32
  if (/^(datepicker|checkbox|text|number)$/.test(type)) {
33
33
  wrapper = "input";
34
34
  } else if (type === "textarea") {
35
35
  wrapper = "textarea";
36
36
  } else if ($.isArray(type)) {
37
- var _ref = [ "select", "option", type, "" ];
37
+ var _ref = [ "select", type, "" ];
38
38
  wrapper = _ref[0];
39
- elem = _ref[1];
40
- opts = _ref[2];
41
- type = _ref[3];
39
+ opts = _ref[1];
40
+ type = _ref[2];
42
41
  } else {
43
42
  throw new Error("Unsupported input type: {" + name + ": " + type + "}");
44
43
  }
@@ -46,29 +45,28 @@
46
45
  html += "<li>\n <label>" + (name.charAt(0).toUpperCase() + name.slice(1)) + "</label>\n <" + wrapper + ' name="' + name + '" class="' + klass + '" type="' + type + '">' + (opts ? function() {
47
46
  var result = [];
48
47
  opts.forEach(function(v) {
49
- var $elem = $("<" + elem + "/>");
48
+ var $elem = $("<option></option>");
50
49
  if ($.isArray(v)) {
51
50
  $elem.text(v[0]).val(v[1]);
52
51
  } else {
53
52
  $elem.text(v);
54
53
  }
55
- result.push($elem.wrap("<div>").parent().html());
54
+ result.push($elem.wrap("<div></div>").parent().html());
56
55
  });
57
56
  return result;
58
57
  }().join("") : "") + ("</" + wrapper + ">") + "</li>";
59
58
  var _ref2 = [];
60
59
  wrapper = _ref2[0];
61
- elem = _ref2[1];
62
- opts = _ref2[2];
63
- type = _ref2[3];
64
- klass = _ref2[4];
60
+ opts = _ref2[1];
61
+ type = _ref2[2];
62
+ klass = _ref2[3];
65
63
  }
66
64
  html += "</ul></form>";
67
65
  var form = $(html).appendTo("body");
68
66
  $("body").trigger("modal_dialog:before_open", [ form ]);
69
67
  form.dialog({
70
68
  modal: true,
71
- open: function open(event, ui) {
69
+ open: function open(_event, _ui) {
72
70
  $("body").trigger("modal_dialog:after_open", [ form ]);
73
71
  },
74
72
  dialogClass: "active_admin_dialog",
@@ -83,7 +81,7 @@
83
81
  }
84
82
  });
85
83
  }
86
- var onDOMReady = function onDOMReady() {
84
+ var onDOMReady$2 = function onDOMReady() {
87
85
  $(".batch_actions_selector li a").off("click confirm:complete");
88
86
  $(".batch_actions_selector li a").on("click", function(event) {
89
87
  var _this = this;
@@ -127,7 +125,7 @@
127
125
  });
128
126
  }
129
127
  };
130
- $(document).ready(onDOMReady).on("page:load turbolinks:load", onDOMReady);
128
+ $(document).ready(onDOMReady$2).on("page:load turbolinks:load", onDOMReady$2);
131
129
  var CheckboxToggler = function() {
132
130
  function CheckboxToggler(options, container) {
133
131
  this.options = options;
@@ -136,7 +134,7 @@
136
134
  this._bind();
137
135
  }
138
136
  var _proto = CheckboxToggler.prototype;
139
- _proto.option = function option(key, value) {};
137
+ _proto.option = function option(_key, _value) {};
140
138
  _proto._init = function _init() {
141
139
  if (!this.container) {
142
140
  throw new Error("Container element not found");
@@ -159,7 +157,7 @@
159
157
  return _this._didChangeToggleAllCheckbox();
160
158
  });
161
159
  };
162
- _proto._didChangeCheckbox = function _didChangeCheckbox(checkbox) {
160
+ _proto._didChangeCheckbox = function _didChangeCheckbox(_checkbox) {
163
161
  var numChecked = this.checkboxes.filter(":checked").length;
164
162
  var allChecked = numChecked === this.checkboxes.length;
165
163
  var someChecked = numChecked > 0 && numChecked < this.checkboxes.length;
@@ -394,7 +392,6 @@
394
392
  $(document).on("change", '.has_many_container[data-sortable] :input[name$="[_destroy]"]', function() {
395
393
  recompute_positions($(this).closest(".has_many"));
396
394
  });
397
- init_sortable();
398
395
  $(document).on("has_many_add:after", ".has_many_container", init_sortable);
399
396
  });
400
397
  var init_sortable = function init_sortable() {
@@ -428,6 +425,7 @@
428
425
  }
429
426
  });
430
427
  };
428
+ $(document).ready(init_sortable).on("page:load turbolinks:load", init_sortable);
431
429
  var PerPage = function() {
432
430
  function PerPage(element) {
433
431
  this.element = element;
@@ -464,7 +462,7 @@
464
462
  return PerPage;
465
463
  }();
466
464
  (function($) {
467
- $(document).on("change", ".pagination_per_page > select", function(event) {
465
+ $(document).on("change", ".pagination_per_page > select", function(_event) {
468
466
  PerPage._jQueryInterface.call($(this), "update");
469
467
  });
470
468
  $.fn["perPage"] = PerPage._jQueryInterface;
@@ -473,7 +471,14 @@
473
471
  function _inheritsLoose(subClass, superClass) {
474
472
  subClass.prototype = Object.create(superClass.prototype);
475
473
  subClass.prototype.constructor = subClass;
476
- subClass.__proto__ = superClass;
474
+ _setPrototypeOf(subClass, superClass);
475
+ }
476
+ function _setPrototypeOf(o, p) {
477
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
478
+ o.__proto__ = p;
479
+ return o;
480
+ };
481
+ return _setPrototypeOf(o, p);
477
482
  }
478
483
  var TableCheckboxToggler = function(_CheckboxToggler) {
479
484
  _inheritsLoose(TableCheckboxToggler, _CheckboxToggler);
@@ -503,10 +508,10 @@
503
508
  return TableCheckboxToggler;
504
509
  }(CheckboxToggler);
505
510
  $.widget.bridge("tableCheckboxToggler", TableCheckboxToggler);
506
- var onDOMReady$2 = function onDOMReady() {
511
+ var onDOMReady = function onDOMReady() {
507
512
  return $("#active_admin_content .tabs").tabs();
508
513
  };
509
- $(document).ready(onDOMReady$2).on("page:load turbolinks:load", onDOMReady$2);
514
+ $(document).ready(onDOMReady).on("page:load turbolinks:load", onDOMReady);
510
515
  function modal_dialog(message, inputs, callback) {
511
516
  console.warn("ActiveAdmin.modal_dialog is deprecated in favor of ActiveAdmin.ModalDialog, please update usage.");
512
517
  return ModalDialog(message, inputs, callback);
@@ -1,41 +1,57 @@
1
1
  /* Active Admin CSS */
2
- // Normalize
3
- @import "./normalize";
2
+ @media screen {
3
+ // Normalize
4
+ @import "./normalize";
4
5
 
5
- // Partials
6
- @import "./typography";
7
- @import "./header";
8
- @import "./forms";
9
- @import "./components/comments";
10
- @import "./components/flash_messages";
11
- @import "./components/date_picker";
12
- @import "./components/tables";
13
- @import "./components/batch_actions";
14
- @import "./components/modal_dialog";
15
- @import "./components/blank_slates";
16
- @import "./components/breadcrumbs";
17
- @import "./components/dropdown_menu";
18
- @import "./components/buttons";
19
- @import "./components/grid";
20
- @import "./components/links";
21
- @import "./components/pagination";
22
- @import "./components/panels";
23
- @import "./components/columns";
24
- @import "./components/scopes";
25
- @import "./components/status_tags";
26
- @import "./components/table_tools";
27
- @import "./components/index_list";
28
- @import "./components/unsupported_browser";
29
- @import "./components/tabs";
30
- @import "./pages/logged_out";
31
- @import "./structure/footer";
32
- @import "./structure/main_structure";
33
- @import "./structure/title_bar";
6
+ // Partials
7
+ @import "./typography";
8
+ @import "./header";
9
+ @import "./forms";
10
+ @import "./components/comments";
11
+ @import "./components/flash_messages";
12
+ @import "./components/date_picker";
13
+ @import "./components/tables";
14
+ @import "./components/batch_actions";
15
+ @import "./components/modal_dialog";
16
+ @import "./components/blank_slates";
17
+ @import "./components/breadcrumbs";
18
+ @import "./components/dropdown_menu";
19
+ @import "./components/buttons";
20
+ @import "./components/grid";
21
+ @import "./components/links";
22
+ @import "./components/pagination";
23
+ @import "./components/panels";
24
+ @import "./components/columns";
25
+ @import "./components/scopes";
26
+ @import "./components/status_tags";
27
+ @import "./components/table_tools";
28
+ @import "./components/index_list";
29
+ @import "./components/unsupported_browser";
30
+ @import "./components/tabs";
31
+ @import "./pages/logged_out";
32
+ @import "./structure/footer";
33
+ @import "./structure/main_structure";
34
+ @import "./structure/title_bar";
34
35
 
35
- body {
36
- @include sans-family;
37
- line-height: 1.5;
38
- font-size: 72%;
39
- background: $body-background-color;
40
- color: $text-color;
36
+ html {
37
+ box-sizing: border-box;
38
+ }
39
+
40
+ *,
41
+ *:before,
42
+ *:after {
43
+ box-sizing: inherit;
44
+ }
45
+
46
+ body {
47
+ @include sans-family;
48
+ line-height: 1.5;
49
+ font-size: 72%;
50
+ background: $body-background-color;
51
+ color: $text-color;
52
+ }
53
+ }
54
+
55
+ @media print {
56
+ @import "./print";
41
57
  }
@@ -250,8 +250,6 @@ form {
250
250
 
251
251
  // -------------------------------------- Sidebar Forms
252
252
 
253
- $sidebar-inner-content-width: $sidebar-width - ($section-padding * 2);
254
-
255
253
  .sidebar_section {
256
254
 
257
255
  label {
@@ -274,13 +272,6 @@ $sidebar-inner-content-width: $sidebar-width - ($section-padding * 2);
274
272
 
275
273
  // -------------------------------------- Filter Forms
276
274
 
277
- $filter-field-seperator-width: 12px;
278
-
279
- $side-by-side-filter-input-width: ($sidebar-inner-content-width / 2) - ($text-input-horizontal-padding * 2) - $filter-field-seperator-width;
280
- $side-by-side-filter-select-width: ($sidebar-inner-content-width / 2) - $filter-field-seperator-width;
281
-
282
- $date-range-filter-input-width: ($sidebar-inner-content-width / 2) - ($filter-field-seperator-width / 2);
283
-
284
275
  form.filter_form {
285
276
  .filter_form_field {
286
277
  margin-bottom: 10px;
@@ -313,7 +304,6 @@ form.filter_form {
313
304
 
314
305
  &.filter_date_range {
315
306
  input[type=text] {
316
- box-sizing: border-box;
317
307
  width: $date-range-filter-input-width;
318
308
 
319
309
  + input {
@@ -52,6 +52,11 @@
52
52
  margin: 0;
53
53
  padding: 0;
54
54
 
55
+ li {
56
+ /* Hover on li, display the ul */
57
+ &:hover > ul { display: block;}
58
+ }
59
+
55
60
  & > li {
56
61
  display: inline-block;
57
62
  margin-right: 4px;
@@ -95,8 +100,6 @@
95
100
  }
96
101
 
97
102
 
98
- /* Hover on li, display the ul */
99
- &:hover ul { display: block;}
100
103
  /* Drop down menus */
101
104
  ul {
102
105
  background: $hover-menu-item-background;
@@ -114,6 +117,7 @@
114
117
  z-index: 1010;
115
118
 
116
119
  li {
120
+ position: relative;
117
121
  margin: 0px;
118
122
  a {
119
123
  background: none;
@@ -124,10 +128,40 @@
124
128
  &.current {
125
129
  a { @include rounded(0) }
126
130
  }
131
+
132
+ &.has_nested > a {
133
+ background: url($menu-arrow-right-light-icon-url) no-repeat calc(100% - 7px) 55%;
134
+ padding-right: 20px;
135
+ }
136
+
137
+ &.has_nested:hover > a {
138
+ background: url($menu-arrow-right-dark-icon-url) no-repeat calc(100% - 7px) 55%;
139
+ color: #fff;
140
+ }
141
+
142
+ ul {
143
+ @include rounded-all(10px,10px,10px,10px);
144
+ margin-top: 0;
145
+ top: -3px;
146
+ left: 100%;
147
+
148
+ /* Create an invisible backdrop that adds 8px margin around the dropdown menu or submenu
149
+ that maintains the hover. This makes it much easier to navigate to submenus in
150
+ particular without losing hover accientally, especially near rounded corners. */
151
+ &:after {
152
+ content: "";
153
+ display: block;
154
+ position: absolute;
155
+ top: -8px;
156
+ left: -8px;
157
+ height: calc(100% + 16px);
158
+ width: calc(100% + 16px);
159
+ z-index: -2;
160
+ }
161
+ }
127
162
  }
128
163
  }
129
164
  }
130
-
131
165
  }
132
166
 
133
167
  #tabs {
@@ -1,17 +1,15 @@
1
- /*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
1
+ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
2
2
 
3
3
  /* Document
4
4
  ========================================================================== */
5
5
 
6
6
  /**
7
7
  * 1. Correct the line height in all browsers.
8
- * 2. Prevent adjustments of font size after orientation changes in
9
- * IE on Windows Phone and in iOS.
8
+ * 2. Prevent adjustments of font size after orientation changes in iOS.
10
9
  */
11
10
 
12
11
  html {
13
12
  line-height: 1.15; /* 1 */
14
- -ms-text-size-adjust: 100%; /* 2 */
15
13
  -webkit-text-size-adjust: 100%; /* 2 */
16
14
  }
17
15
 
@@ -19,7 +17,7 @@ html {
19
17
  ========================================================================== */
20
18
 
21
19
  /**
22
- * Remove the margin in all browsers (opinionated).
20
+ * Remove the margin in all browsers.
23
21
  */
24
22
 
25
23
  body {
@@ -27,15 +25,10 @@ body {
27
25
  }
28
26
 
29
27
  /**
30
- * Add the correct display in IE 9-.
28
+ * Render the `main` element consistently in IE.
31
29
  */
32
30
 
33
- article,
34
- aside,
35
- footer,
36
- header,
37
- nav,
38
- section {
31
+ main {
39
32
  display: block;
40
33
  }
41
34
 
@@ -52,25 +45,6 @@ h1 {
52
45
  /* Grouping content
53
46
  ========================================================================== */
54
47
 
55
- /**
56
- * Add the correct display in IE 9-.
57
- * 1. Add the correct display in IE.
58
- */
59
-
60
- figcaption,
61
- figure,
62
- main { /* 1 */
63
- display: block;
64
- }
65
-
66
- /**
67
- * Add the correct margin in IE 8.
68
- */
69
-
70
- figure {
71
- margin: 1em 40px;
72
- }
73
-
74
48
  /**
75
49
  * 1. Add the correct box sizing in Firefox.
76
50
  * 2. Show the overflow in Edge and IE.
@@ -96,17 +70,15 @@ pre {
96
70
  ========================================================================== */
97
71
 
98
72
  /**
99
- * 1. Remove the gray background on active links in IE 10.
100
- * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
73
+ * Remove the gray background on active links in IE 10.
101
74
  */
102
75
 
103
76
  a {
104
- background-color: transparent; /* 1 */
105
- -webkit-text-decoration-skip: objects; /* 2 */
77
+ background-color: transparent;
106
78
  }
107
79
 
108
80
  /**
109
- * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
81
+ * 1. Remove the bottom border in Chrome 57-
110
82
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
111
83
  */
112
84
 
@@ -116,15 +88,6 @@ abbr[title] {
116
88
  text-decoration: underline dotted; /* 2 */
117
89
  }
118
90
 
119
- /**
120
- * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
121
- */
122
-
123
- b,
124
- strong {
125
- font-weight: inherit;
126
- }
127
-
128
91
  /**
129
92
  * Add the correct font weight in Chrome, Edge, and Safari.
130
93
  */
@@ -146,23 +109,6 @@ samp {
146
109
  font-size: 1em; /* 2 */
147
110
  }
148
111
 
149
- /**
150
- * Add the correct font style in Android 4.3-.
151
- */
152
-
153
- dfn {
154
- font-style: italic;
155
- }
156
-
157
- /**
158
- * Add the correct background and color in IE 9-.
159
- */
160
-
161
- mark {
162
- background-color: #ff0;
163
- color: #000;
164
- }
165
-
166
112
  /**
167
113
  * Add the correct font size in all browsers.
168
114
  */
@@ -196,44 +142,18 @@ sup {
196
142
  ========================================================================== */
197
143
 
198
144
  /**
199
- * Add the correct display in IE 9-.
200
- */
201
-
202
- audio,
203
- video {
204
- display: inline-block;
205
- }
206
-
207
- /**
208
- * Add the correct display in iOS 4-7.
209
- */
210
-
211
- audio:not([controls]) {
212
- display: none;
213
- height: 0;
214
- }
215
-
216
- /**
217
- * Remove the border on images inside links in IE 10-.
145
+ * Remove the border on images inside links in IE 10.
218
146
  */
219
147
 
220
148
  img {
221
149
  border-style: none;
222
150
  }
223
151
 
224
- /**
225
- * Hide the overflow in IE.
226
- */
227
-
228
- svg:not(:root) {
229
- overflow: hidden;
230
- }
231
-
232
152
  /* Forms
233
153
  ========================================================================== */
234
154
 
235
155
  /**
236
- * 1. Change the font styles in all browsers (opinionated).
156
+ * 1. Change the font styles in all browsers.
237
157
  * 2. Remove the margin in Firefox and Safari.
238
158
  */
239
159
 
@@ -242,7 +162,7 @@ input,
242
162
  optgroup,
243
163
  select,
244
164
  textarea {
245
- font-family: sans-serif; /* 1 */
165
+ font-family: inherit; /* 1 */
246
166
  font-size: 100%; /* 1 */
247
167
  line-height: 1.15; /* 1 */
248
168
  margin: 0; /* 2 */
@@ -269,16 +189,14 @@ select { /* 1 */
269
189
  }
270
190
 
271
191
  /**
272
- * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
273
- * controls in Android 4.
274
- * 2. Correct the inability to style clickable types in iOS and Safari.
192
+ * Correct the inability to style clickable types in iOS and Safari.
275
193
  */
276
194
 
277
195
  button,
278
- html [type="button"], /* 1 */
196
+ [type="button"],
279
197
  [type="reset"],
280
198
  [type="submit"] {
281
- -webkit-appearance: button; /* 2 */
199
+ -webkit-appearance: button;
282
200
  }
283
201
 
284
202
  /**
@@ -329,17 +247,15 @@ legend {
329
247
  }
330
248
 
331
249
  /**
332
- * 1. Add the correct display in IE 9-.
333
- * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
250
+ * Add the correct vertical alignment in Chrome, Firefox, and Opera.
334
251
  */
335
252
 
336
253
  progress {
337
- display: inline-block; /* 1 */
338
- vertical-align: baseline; /* 2 */
254
+ vertical-align: baseline;
339
255
  }
340
256
 
341
257
  /**
342
- * Remove the default vertical scrollbar in IE.
258
+ * Remove the default vertical scrollbar in IE 10+.
343
259
  */
344
260
 
345
261
  textarea {
@@ -347,8 +263,8 @@ textarea {
347
263
  }
348
264
 
349
265
  /**
350
- * 1. Add the correct box sizing in IE 10-.
351
- * 2. Remove the padding in IE 10-.
266
+ * 1. Add the correct box sizing in IE 10.
267
+ * 2. Remove the padding in IE 10.
352
268
  */
353
269
 
354
270
  [type="checkbox"],
@@ -377,10 +293,9 @@ textarea {
377
293
  }
378
294
 
379
295
  /**
380
- * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
296
+ * Remove the inner padding in Chrome and Safari on macOS.
381
297
  */
382
298
 
383
- [type="search"]::-webkit-search-cancel-button,
384
299
  [type="search"]::-webkit-search-decoration {
385
300
  -webkit-appearance: none;
386
301
  }
@@ -399,12 +314,10 @@ textarea {
399
314
  ========================================================================== */
400
315
 
401
316
  /*
402
- * Add the correct display in IE 9-.
403
- * 1. Add the correct display in Edge, IE, and Firefox.
317
+ * Add the correct display in Edge, IE 10+, and Firefox.
404
318
  */
405
319
 
406
- details, /* 1 */
407
- menu {
320
+ details {
408
321
  display: block;
409
322
  }
410
323
 
@@ -416,30 +329,19 @@ summary {
416
329
  display: list-item;
417
330
  }
418
331
 
419
- /* Scripting
332
+ /* Misc
420
333
  ========================================================================== */
421
334
 
422
335
  /**
423
- * Add the correct display in IE 9-.
424
- */
425
-
426
- canvas {
427
- display: inline-block;
428
- }
429
-
430
- /**
431
- * Add the correct display in IE.
336
+ * Add the correct display in IE 10+.
432
337
  */
433
338
 
434
339
  template {
435
340
  display: none;
436
341
  }
437
342
 
438
- /* Hidden
439
- ========================================================================== */
440
-
441
343
  /**
442
- * Add the correct display in IE 10-.
344
+ * Add the correct display in IE 10.
443
345
  */
444
346
 
445
347
  [hidden] {
@@ -2,9 +2,9 @@
2
2
  .comments {
3
3
 
4
4
  .active_admin_comment {
5
- clear: both;
5
+ @include clearfix;
6
6
  margin-top: 10px;
7
- margin-bottom: 40px;
7
+ margin-bottom: 20px;
8
8
  max-width: 700px;
9
9
 
10
10
  .active_admin_comment_meta {
@@ -17,11 +17,10 @@
17
17
  }
18
18
 
19
19
  .ui-datepicker-header {
20
- height: 14px;
21
20
  @include primary-gradient;
22
21
  padding: 12px 5px 7px 4px;
23
22
  margin: 0px 0px 2px 2px;
24
- width: 147px;
23
+ width: 156px;
25
24
  border-top-left-radius: 7px;
26
25
  border-top-right-radius: 7px;
27
26
  position: relative;
@@ -106,7 +106,6 @@
106
106
  li {
107
107
  display: block;
108
108
  border-bottom: solid 1px #ebebeb;
109
- box-sizing: border-box;
110
109
 
111
110
  a {
112
111
  display: block;