rails_admin 3.0.0.beta2 → 3.0.0.rc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -2
  3. data/Rakefile +11 -0
  4. data/app/assets/javascripts/rails_admin.js +4 -4
  5. data/app/assets/stylesheets/rails_admin.scss +31 -0
  6. data/app/controllers/rails_admin/application_controller.rb +1 -1
  7. data/app/controllers/rails_admin/main_controller.rb +10 -18
  8. data/app/helpers/rails_admin/application_helper.rb +12 -13
  9. data/app/helpers/rails_admin/form_builder.rb +3 -3
  10. data/app/helpers/rails_admin/main_helper.rb +1 -1
  11. data/app/views/kaminari/ra-twitter-bootstrap/_gap.html.erb +2 -2
  12. data/app/views/kaminari/ra-twitter-bootstrap/_next_page.html.erb +4 -4
  13. data/app/views/kaminari/ra-twitter-bootstrap/_page.html.erb +4 -4
  14. data/app/views/kaminari/ra-twitter-bootstrap/_paginator.html.erb +12 -10
  15. data/app/views/kaminari/ra-twitter-bootstrap/_prev_page.html.erb +4 -4
  16. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_next_page.html.erb +4 -4
  17. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_paginator.html.erb +6 -4
  18. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_prev_page.html.erb +4 -4
  19. data/app/views/layouts/rails_admin/_navigation.html.erb +12 -16
  20. data/app/views/layouts/rails_admin/_secondary_navigation.html.erb +8 -8
  21. data/app/views/layouts/rails_admin/_sidebar_navigation.html.erb +1 -5
  22. data/app/views/layouts/rails_admin/application.html.erb +4 -7
  23. data/app/views/layouts/rails_admin/{pjax.html.erb → content.html.erb} +7 -5
  24. data/app/views/layouts/rails_admin/modal.js.erb +1 -1
  25. data/app/views/rails_admin/main/_dashboard_history.html.erb +1 -1
  26. data/app/views/rails_admin/main/_delete_notice.html.erb +2 -2
  27. data/app/views/rails_admin/main/_form_boolean.html.erb +6 -8
  28. data/app/views/rails_admin/main/_form_colorpicker.html.erb +5 -1
  29. data/app/views/rails_admin/main/_form_datetime.html.erb +8 -7
  30. data/app/views/rails_admin/main/_form_enumeration.html.erb +5 -1
  31. data/app/views/rails_admin/main/_form_file_upload.html.erb +1 -1
  32. data/app/views/rails_admin/main/_form_filtering_multiselect.html.erb +14 -14
  33. data/app/views/rails_admin/main/_form_filtering_select.html.erb +16 -21
  34. data/app/views/rails_admin/main/_form_multiple_file_upload.html.erb +1 -1
  35. data/app/views/rails_admin/main/_form_nested_many.html.erb +4 -4
  36. data/app/views/rails_admin/main/_form_nested_one.html.erb +4 -4
  37. data/app/views/rails_admin/main/_form_polymorphic_association.html.erb +11 -6
  38. data/app/views/rails_admin/main/_submit_buttons.html.erb +8 -8
  39. data/app/views/rails_admin/main/bulk_delete.html.erb +1 -1
  40. data/app/views/rails_admin/main/dashboard.html.erb +4 -4
  41. data/app/views/rails_admin/main/delete.html.erb +1 -1
  42. data/app/views/rails_admin/main/edit.html.erb +1 -1
  43. data/app/views/rails_admin/main/export.html.erb +35 -32
  44. data/app/views/rails_admin/main/history.html.erb +16 -14
  45. data/app/views/rails_admin/main/index.html.erb +38 -35
  46. data/app/views/rails_admin/main/new.html.erb +1 -1
  47. data/config/locales/rails_admin.en.yml +0 -1
  48. data/lib/generators/rails_admin/install_generator.rb +0 -1
  49. data/lib/generators/rails_admin/templates/webpack.config.js +0 -3
  50. data/lib/rails_admin/adapters/active_record/object_extension.rb +1 -1
  51. data/lib/rails_admin/adapters/active_record/property.rb +1 -1
  52. data/lib/rails_admin/adapters/active_record.rb +7 -3
  53. data/lib/rails_admin/adapters/mongoid/property.rb +3 -3
  54. data/lib/rails_admin/adapters/mongoid.rb +2 -2
  55. data/lib/rails_admin/config/actions/base.rb +1 -6
  56. data/lib/rails_admin/config/actions/dashboard.rb +13 -9
  57. data/lib/rails_admin/config/actions/delete.rb +4 -0
  58. data/lib/rails_admin/config/actions/edit.rb +4 -0
  59. data/lib/rails_admin/config/actions/new.rb +5 -0
  60. data/lib/rails_admin/config/actions/show_in_app.rb +0 -4
  61. data/lib/rails_admin/config/fields/association.rb +6 -1
  62. data/lib/rails_admin/config/fields/base.rb +1 -1
  63. data/lib/rails_admin/config/fields/types/action_text.rb +1 -1
  64. data/lib/rails_admin/config/fields/types/date.rb +7 -0
  65. data/lib/rails_admin/config/fields/types/datetime.rb +9 -4
  66. data/lib/rails_admin/config/fields/types/has_many_association.rb +4 -0
  67. data/lib/rails_admin/config/fields/types/has_one_association.rb +4 -0
  68. data/lib/rails_admin/config/fields/types/time.rb +9 -0
  69. data/lib/rails_admin/config/has_fields.rb +4 -0
  70. data/lib/rails_admin/config/model.rb +8 -0
  71. data/lib/rails_admin/config/sections/list.rb +4 -4
  72. data/lib/rails_admin/config.rb +4 -1
  73. data/lib/rails_admin/engine.rb +2 -5
  74. data/lib/rails_admin/support/datetime.rb +50 -53
  75. data/lib/rails_admin/support/esmodule_preprocessor.rb +2 -1
  76. data/lib/rails_admin/version.rb +1 -1
  77. data/package.json +7 -5
  78. data/src/rails_admin/base.js +3 -6
  79. data/src/rails_admin/filter-box.js +36 -37
  80. data/src/rails_admin/filtering-select.js +3 -6
  81. data/src/rails_admin/i18n.js +0 -3
  82. data/src/rails_admin/nested-form-hooks.js +16 -8
  83. data/src/rails_admin/remote-form.js +18 -15
  84. data/src/rails_admin/styles/base/theming.scss +80 -155
  85. data/src/rails_admin/styles/base/variables.scss +2 -0
  86. data/src/rails_admin/styles/base.scss +8 -45
  87. data/src/rails_admin/styles/filtering-multiselect.scss +2 -2
  88. data/src/rails_admin/styles/filtering-select.scss +1 -1
  89. data/src/rails_admin/styles/widgets.scss +1 -10
  90. data/src/rails_admin/ui.js +4 -54
  91. data/src/rails_admin/widgets.js +38 -48
  92. data/vendor/assets/javascripts/rails_admin/bootstrap.js +5046 -0
  93. data/vendor/assets/javascripts/rails_admin/flatpickr-with-locales.js +10683 -0
  94. data/vendor/assets/javascripts/rails_admin/popper.js +1974 -0
  95. data/vendor/assets/stylesheets/rails_admin/bootstrap/_accordion.scss +118 -0
  96. data/vendor/assets/stylesheets/rails_admin/bootstrap/_alert.scss +57 -0
  97. data/vendor/assets/stylesheets/rails_admin/bootstrap/_badge.scss +29 -0
  98. data/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumb.scss +28 -0
  99. data/vendor/assets/stylesheets/rails_admin/bootstrap/_button-group.scss +139 -0
  100. data/vendor/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +64 -110
  101. data/vendor/assets/stylesheets/rails_admin/bootstrap/_card.scss +216 -0
  102. data/vendor/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +162 -176
  103. data/vendor/assets/stylesheets/rails_admin/bootstrap/_close.scss +31 -26
  104. data/vendor/assets/stylesheets/rails_admin/bootstrap/_containers.scss +41 -0
  105. data/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdown.scss +240 -0
  106. data/vendor/assets/stylesheets/rails_admin/bootstrap/_forms.scss +9 -538
  107. data/vendor/assets/stylesheets/rails_admin/bootstrap/_functions.scss +302 -0
  108. data/vendor/assets/stylesheets/rails_admin/bootstrap/_grid.scss +18 -69
  109. data/vendor/assets/stylesheets/rails_admin/bootstrap/_helpers.scss +9 -0
  110. data/vendor/assets/stylesheets/rails_admin/bootstrap/_images.scss +42 -0
  111. data/vendor/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +127 -84
  112. data/vendor/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +26 -22
  113. data/vendor/assets/stylesheets/rails_admin/bootstrap/_modal.scss +209 -0
  114. data/vendor/assets/stylesheets/rails_admin/bootstrap/_nav.scss +139 -0
  115. data/vendor/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +218 -542
  116. data/vendor/assets/stylesheets/rails_admin/bootstrap/_offcanvas.scss +83 -0
  117. data/vendor/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +46 -70
  118. data/vendor/assets/stylesheets/rails_admin/bootstrap/_placeholders.scss +51 -0
  119. data/vendor/assets/stylesheets/rails_admin/bootstrap/_popover.scss +158 -0
  120. data/vendor/assets/stylesheets/rails_admin/bootstrap/_progress.scss +48 -0
  121. data/vendor/assets/stylesheets/rails_admin/bootstrap/_reboot.scss +625 -0
  122. data/vendor/assets/stylesheets/rails_admin/bootstrap/_root.scss +54 -0
  123. data/vendor/assets/stylesheets/rails_admin/bootstrap/_spinners.scss +69 -0
  124. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tables.scss +100 -178
  125. data/vendor/assets/stylesheets/rails_admin/bootstrap/_toasts.scss +51 -0
  126. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +97 -77
  127. data/vendor/assets/stylesheets/rails_admin/bootstrap/_transitions.scss +27 -0
  128. data/vendor/assets/stylesheets/rails_admin/bootstrap/_type.scss +54 -254
  129. data/vendor/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +628 -55
  130. data/vendor/assets/stylesheets/rails_admin/bootstrap/_variables.scss +1572 -781
  131. data/vendor/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +38 -35
  132. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_floating-labels.scss +63 -0
  133. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-check.scss +152 -0
  134. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-control.scss +219 -0
  135. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-range.scss +91 -0
  136. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-select.scss +72 -0
  137. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-text.scss +11 -0
  138. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_input-group.scss +121 -0
  139. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_labels.scss +36 -0
  140. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_validation.scss +12 -0
  141. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_clearfix.scss +3 -0
  142. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_colored-links.scss +12 -0
  143. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_position.scss +30 -0
  144. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_ratio.scss +26 -0
  145. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stacks.scss +15 -0
  146. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stretched-link.scss +15 -0
  147. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_text-truncation.scss +7 -0
  148. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_visually-hidden.scss +8 -0
  149. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_vr.scss +8 -0
  150. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alert.scss +11 -0
  151. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_backdrop.scss +14 -0
  152. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +72 -12
  153. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_box-shadow.scss +18 -0
  154. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_breakpoints.scss +127 -0
  155. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +113 -30
  156. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_caret.scss +64 -0
  157. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +5 -18
  158. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_color-scheme.scss +7 -0
  159. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_container.scss +9 -0
  160. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_deprecate.scss +10 -0
  161. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +130 -70
  162. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +27 -38
  163. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +127 -98
  164. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +6 -24
  165. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +13 -20
  166. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_lists.scss +7 -0
  167. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +24 -16
  168. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-text.scss +17 -0
  169. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_resize.scss +1 -1
  170. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-variants.scss +21 -0
  171. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/{_text-overflow.scss → _text-truncate.scss} +2 -2
  172. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_transition.scss +26 -0
  173. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_utilities.scss +89 -0
  174. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_visually-hidden.scss +29 -0
  175. data/vendor/assets/stylesheets/rails_admin/bootstrap/utilities/_api.scss +47 -0
  176. data/vendor/assets/stylesheets/rails_admin/bootstrap/vendor/_rfs.scss +354 -0
  177. data/vendor/assets/stylesheets/rails_admin/flatpickr.css +791 -0
  178. metadata +80 -91
  179. data/app/assets/stylesheets/rails_admin.scss.erb +0 -76
  180. data/lib/generators/rails_admin/templates/environment.js +0 -6
  181. data/src/rails_admin/styles/themes/cerulean/mixins.scss +0 -0
  182. data/src/rails_admin/styles/themes/cerulean/theming.scss +0 -135
  183. data/src/rails_admin/styles/themes/cerulean/variables.scss +0 -830
  184. data/src/rails_admin/styles/themes/default/mixins.scss +0 -8
  185. data/src/rails_admin/styles/themes/default/theming.scss +0 -11
  186. data/src/rails_admin/styles/themes/default/variables.scss +0 -12
  187. data/src/rails_admin/vendor/jquery.pjax.js +0 -899
  188. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-affix.js +0 -164
  189. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-alert.js +0 -95
  190. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-button.js +0 -125
  191. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-carousel.js +0 -246
  192. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-collapse.js +0 -212
  193. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-dropdown.js +0 -165
  194. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-modal.js +0 -358
  195. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-popover.js +0 -123
  196. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-scrollspy.js +0 -172
  197. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-tab.js +0 -155
  198. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-tooltip.js +0 -677
  199. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-transition.js +0 -59
  200. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-typeahead.js +0 -1782
  201. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap.js +0 -13
  202. data/vendor/assets/javascripts/rails_admin/bootstrap-datetimepicker.js +0 -2611
  203. data/vendor/assets/javascripts/rails_admin/jquery.pjax.js +0 -898
  204. data/vendor/assets/javascripts/rails_admin/moment-with-locales.js +0 -18085
  205. data/vendor/assets/stylesheets/rails_admin/_bootstrap-datetimepicker.scss +0 -343
  206. data/vendor/assets/stylesheets/rails_admin/bootstrap/_alerts.scss +0 -68
  207. data/vendor/assets/stylesheets/rails_admin/bootstrap/_badges.scss +0 -57
  208. data/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumbs.scss +0 -26
  209. data/vendor/assets/stylesheets/rails_admin/bootstrap/_button-groups.scss +0 -240
  210. data/vendor/assets/stylesheets/rails_admin/bootstrap/_code.scss +0 -68
  211. data/vendor/assets/stylesheets/rails_admin/bootstrap/_component-animations.scss +0 -35
  212. data/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdowns.scss +0 -215
  213. data/vendor/assets/stylesheets/rails_admin/bootstrap/_glyphicons.scss +0 -237
  214. data/vendor/assets/stylesheets/rails_admin/bootstrap/_input-groups.scss +0 -166
  215. data/vendor/assets/stylesheets/rails_admin/bootstrap/_jumbotron.scss +0 -48
  216. data/vendor/assets/stylesheets/rails_admin/bootstrap/_labels.scss +0 -66
  217. data/vendor/assets/stylesheets/rails_admin/bootstrap/_media.scss +0 -56
  218. data/vendor/assets/stylesheets/rails_admin/bootstrap/_modals.scss +0 -150
  219. data/vendor/assets/stylesheets/rails_admin/bootstrap/_navs.scss +0 -242
  220. data/vendor/assets/stylesheets/rails_admin/bootstrap/_normalize.scss +0 -425
  221. data/vendor/assets/stylesheets/rails_admin/bootstrap/_pager.scss +0 -55
  222. data/vendor/assets/stylesheets/rails_admin/bootstrap/_panels.scss +0 -243
  223. data/vendor/assets/stylesheets/rails_admin/bootstrap/_popovers.scss +0 -133
  224. data/vendor/assets/stylesheets/rails_admin/bootstrap/_print.scss +0 -101
  225. data/vendor/assets/stylesheets/rails_admin/bootstrap/_progress-bars.scss +0 -105
  226. data/vendor/assets/stylesheets/rails_admin/bootstrap/_responsive-embed.scss +0 -34
  227. data/vendor/assets/stylesheets/rails_admin/bootstrap/_responsive-utilities.scss +0 -174
  228. data/vendor/assets/stylesheets/rails_admin/bootstrap/_scaffolding.scss +0 -150
  229. data/vendor/assets/stylesheets/rails_admin/bootstrap/_theme.scss +0 -258
  230. data/vendor/assets/stylesheets/rails_admin/bootstrap/_thumbnails.scss +0 -38
  231. data/vendor/assets/stylesheets/rails_admin/bootstrap/_wells.scss +0 -29
  232. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alerts.scss +0 -14
  233. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_background-variant.scss +0 -11
  234. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_center-block.scss +0 -7
  235. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid-framework.scss +0 -81
  236. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_hide-text.scss +0 -21
  237. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_labels.scss +0 -12
  238. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-divider.scss +0 -10
  239. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-vertical-align.scss +0 -9
  240. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_opacity.scss +0 -8
  241. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_panels.scss +0 -24
  242. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_progress-bar.scss +0 -10
  243. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-filter.scss +0 -8
  244. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_responsive-visibility.scss +0 -21
  245. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_size.scss +0 -10
  246. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_tab-focus.scss +0 -9
  247. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-row.scss +0 -28
  248. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_text-emphasis.scss +0 -11
  249. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_vendor-prefixes.scss +0 -219
  250. data/vendor/assets/stylesheets/rails_admin/bootstrap-datetimepicker-build.scss +0 -16
@@ -1,6 +1,6 @@
1
1
  <%
2
2
  query = params[:query]
3
- params = request.params.except(:authenticity_token, :action, :controller, :utf8, :bulk_export, :_pjax)
3
+ params = request.params.except(:authenticity_token, :action, :controller, :utf8, :bulk_export)
4
4
  params.delete(:query) if params[:query].blank?
5
5
  params.delete(:sort_reverse) unless params[:sort_reverse] == 'true'
6
6
  sort_reverse = params[:sort_reverse]
@@ -18,16 +18,13 @@
18
18
  %>
19
19
 
20
20
  <% content_for :contextual_tabs do %>
21
- <% if checkboxes %>
22
- <%= bulk_menu %>
23
- <% end %>
24
21
  <% if filterable_fields.present? %>
25
- <li class="dropdown" style="float:right">
26
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">
22
+ <li class="nav-item dropdown">
23
+ <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#">
27
24
  <%= t('admin.misc.add_filter') %>
28
25
  <b class="caret"></b>
29
26
  </a>
30
- <ul class="dropdown-menu" id="filters" style="left:auto; right:0;">
27
+ <ul class="dropdown-menu dropdown-menu-end" id="filters">
31
28
  <% filterable_fields.each do |field| %>
32
29
  <%
33
30
  field_options = case field.type
@@ -40,6 +37,7 @@
40
37
  <li>
41
38
  <a
42
39
  href="#"
40
+ class="dropdown-item"
43
41
  data-field-label="<%= field.label %>"
44
42
  data-field-name="<%= field.name %>"
45
43
  data-field-operator="<%= field.default_filter_operator %>"
@@ -47,7 +45,7 @@
47
45
  data-field-required="<%= field.required.to_s %>"
48
46
  data-field-type="<%= field.type %>"
49
47
  data-field-value=""
50
- data-field-datetimepicker-format="<%= field.try(:momentjs_format) %>"
48
+ data-field-datetimepicker-options="<%= field.try(:datepicker_options).try(:to_json) %>"
51
49
  >
52
50
  <%= field.label %>
53
51
  </a>
@@ -56,6 +54,9 @@
56
54
  </ul>
57
55
  </li>
58
56
  <% end %>
57
+ <% if checkboxes %>
58
+ <%= bulk_menu %>
59
+ <% end %>
59
60
  <% end %>
60
61
 
61
62
  <style>
@@ -66,27 +67,29 @@
66
67
  </style>
67
68
 
68
69
  <div id="list">
69
- <%= form_tag(index_path(params.except(*%w[page f query])), method: :get, class: "pjax-form form-inline") do %>
70
- <div class="well">
71
- <span data-options="<%= ordered_filter_options.to_json %>" id="filters_box"></span>
70
+ <%= form_tag(index_path(params.except(*%w[page f query])), method: :get) do %>
71
+ <div class="card mb-3 p-3 bg-light">
72
+ <div class="row" data-options="<%= ordered_filter_options.to_json %>" id="filters_box"></div>
72
73
  <hr class="filters_box" style="display:<%= ordered_filters.empty? ? 'none' : 'block' %>"/>
73
- <div class="input-group">
74
- <input class="form-control input-small" name="query" placeholder="<%= t("admin.misc.filter") %>" type="search" value="<%= query %>"></input>
75
- <span class="input-group-btn">
76
- <button class="btn btn-primary" data-disable-with="<%= '<i class="fas fa-sync"></i>' + t('admin.misc.refresh') %>" type="submit">
77
- <i class="fas fa-sync"></i>
78
- <%= t('admin.misc.refresh') %>
79
- </button>
80
- <button class="btn btn-info" id="remove_filter" title="<%= t('admin.misc.reset_filters') %>">
81
- <i class="fas fa-times"></i>
82
- </button>
83
- </span>
74
+ <div class="row">
75
+ <div class="col-sm-6">
76
+ <div class="input-group">
77
+ <input class="form-control" name="query" placeholder="<%= t("admin.misc.filter") %>" type="search" value="<%= query %>" />
78
+ <button class="btn btn-primary" data-disable-with="<%= '<i class="fas fa-sync"></i>' + t('admin.misc.refresh') %>" type="submit">
79
+ <i class="fas fa-sync"></i>
80
+ <%= t('admin.misc.refresh') %>
81
+ </button>
82
+ <button class="btn btn-info" id="remove_filter" title="<%= t('admin.misc.reset_filters') %>">
83
+ <i class="fas fa-times"></i>
84
+ </button>
85
+ </div>
86
+ </div>
87
+ <div class="col-sm-6 text-end">
88
+ <% if export_action %>
89
+ <%= link_to wording_for(:link, export_action), export_path(params.except('page')), class: 'btn btn-info' %>
90
+ <% end %>
91
+ </div>
84
92
  </div>
85
- <% if export_action %>
86
- <span style="float:right">
87
- <%= link_to wording_for(:link, export_action), export_path(params.except('page')), class: 'btn btn-info' %>
88
- </span>
89
- <% end %>
90
93
  </div>
91
94
  <% end %>
92
95
  <% unless @model_config.list.scopes.empty? %>
@@ -94,14 +97,14 @@
94
97
  <% @model_config.list.scopes.each_with_index do |scope, index| %>
95
98
  <% scope = '_all' if scope.nil? %>
96
99
  <li class="<%= 'active' if scope.to_s == params[:scope] || (params[:scope].blank? && index == 0) %>">
97
- <a class="pjax" href="<%= index_path(params.merge(scope: scope, page: nil)) %>">
100
+ <a href="<%= index_path(params.merge(scope: scope, page: nil)) %>">
98
101
  <%= I18n.t("admin.scopes.#{@abstract_model.to_param}.#{scope}", default: I18n.t("admin.scopes.#{scope}", default: scope.to_s.titleize)) %>
99
102
  </a>
100
103
  </li>
101
104
  <% end %>
102
105
  </ul>
103
106
  <% end %>
104
- <%= form_tag bulk_action_path(model_name: @abstract_model.to_param), method: :post, id: "bulk_form", class: ["form"] do %>
107
+ <%= form_tag bulk_action_path(model_name: @abstract_model.to_param), method: :post, id: "bulk_form", class: ["form", "mb-3"] do %>
105
108
  <%= hidden_field_tag :bulk_action %>
106
109
  <% if description.present? %>
107
110
  <p>
@@ -116,7 +119,7 @@
116
119
  <tr>
117
120
  <% if checkboxes %>
118
121
  <th class="shrink sticky">
119
- <input class="toggle" type="checkbox"></input>
122
+ <input class="toggle" type="checkbox" />
120
123
  </th>
121
124
  <% end %>
122
125
  <% properties.each do |property| %>
@@ -125,7 +128,7 @@
125
128
  <% sort_location = index_path params.except('sort_reverse').except('page').merge(sort: property.name).merge(selected && sort_reverse != "true" ? {sort_reverse: "true"} : {}) %>
126
129
  <% sort_direction = (sort_reverse == 'true' ? "headerSortUp" : "headerSortDown" if selected) %>
127
130
  <% end %>
128
- <th class="<%= [property.sortable && "header pjax", property.sortable && sort_direction, property.sticky? && 'sticky', property.css_class, property.type_css_class].compact.join(' ') %>" data-href="<%= property.sortable && sort_location %>" rel="tooltip" title="<%= property.hint %>">
131
+ <th class="<%= [property.sortable && "header", property.sortable && sort_direction, property.sticky? && 'sticky', property.css_class, property.type_css_class].select(&:present?).join(' ') %>" data-href="<%= property.sortable && sort_location %>" rel="tooltip" title="<%= property.hint %>">
129
132
  <%= property.label %>
130
133
  </th>
131
134
  <% end %>
@@ -142,7 +145,7 @@
142
145
  <% end %>
143
146
  <% properties.map{ |property| property.bind(:object, object) }.each do |property| %>
144
147
  <% value = property.pretty_value %>
145
- <td class="<%= [property.sticky? && 'sticky', property.css_class, property.type_css_class].compact.join(' ') %>" title="<%= strip_tags(value.to_s) %>">
148
+ <td class="<%= [property.sticky? && 'sticky', property.css_class, property.type_css_class].select(&:present?).join(' ') %>" title="<%= strip_tags(value.to_s) %>">
146
149
  <%= value %>
147
150
  </td>
148
151
  <% end %>
@@ -166,19 +169,19 @@
166
169
  <% if @model_config.list.limited_pagination %>
167
170
  <div class="row">
168
171
  <div class="col-md-6">
169
- <%= paginate(@objects, theme: 'ra-twitter-bootstrap/without_count', total_pages: Float::INFINITY, remote: true) %>
172
+ <%= paginate(@objects, theme: 'ra-twitter-bootstrap/without_count', total_pages: Float::INFINITY) %>
170
173
  </div>
171
174
  </div>
172
175
  <% elsif @objects.respond_to?(:total_count) %>
173
176
  <% total_count = @objects.total_count.to_i %>
174
177
  <div class="row">
175
178
  <div class="col-md-6">
176
- <%= paginate(@objects, theme: 'ra-twitter-bootstrap', remote: true) %>
179
+ <%= paginate(@objects, theme: 'ra-twitter-bootstrap') %>
177
180
  </div>
178
181
  </div>
179
182
  <div class="row">
180
183
  <div class="col-md-6">
181
- <%= link_to(t("admin.misc.show_all"), index_path(params.merge(all: true)), class: "show-all btn btn-default clearfix pjax") unless total_count > 100 || total_count <= @objects.to_a.size %>
184
+ <%= link_to(t("admin.misc.show_all"), index_path(params.merge(all: true)), class: "show-all btn btn-light clearfix") unless total_count > 100 || total_count <= @objects.to_a.size %>
182
185
  </div>
183
186
  </div>
184
187
  <div class="clearfix total-count">
@@ -1,3 +1,3 @@
1
- <%= rails_admin_form_for @object, url: new_path(model_name: @abstract_model.to_param), as: @abstract_model.param_key, html: { multipart: true, class: "form-horizontal denser", data: { title: @page_name } } do |form| %>
1
+ <%= rails_admin_form_for @object, url: new_path(model_name: @abstract_model.to_param), as: @abstract_model.param_key, html: { multipart: true, class: "main", data: { title: @page_name } } do |form| %>
2
2
  <%= form.generate action: :create %>
3
3
  <% end %>
@@ -21,7 +21,6 @@ en:
21
21
  too_many_objects: "Too many objects, use search box above"
22
22
  no_objects: "No objects found"
23
23
  clear: Clear
24
- loading: "Loading..."
25
24
  toggle_navigation: Toggle navigation
26
25
  home:
27
26
  name: "Home"
@@ -53,7 +53,6 @@ module RailsAdmin
53
53
  @scss_relative_dir = '../stylesheets/'
54
54
  template 'rails_admin.js.erb', 'app/javascript/packs/rails_admin.js'
55
55
  template 'rails_admin.scss', 'app/javascript/stylesheets/rails_admin.scss'
56
- template 'environment.js', 'config/webpack/environment.js'
57
56
  end
58
57
 
59
58
  def configure_for_webpack
@@ -24,9 +24,6 @@ module.exports = {
24
24
  new webpack.optimize.LimitChunkCountPlugin({
25
25
  maxChunks: 1
26
26
  }),
27
- new webpack.ProvidePlugin({
28
- jQuery: "jquery"
29
- }),
30
27
  new MiniCssExtractPlugin(),
31
28
  ]
32
29
  }
@@ -13,7 +13,7 @@ module RailsAdmin
13
13
  end
14
14
 
15
15
  def #{association.name}_id=(item_id)
16
- self.#{association.name} = #{association.klass}.find_by_id(item_id)
16
+ self.#{association.name} = (#{association.klass}.find(item_id) rescue nil)
17
17
  end
18
18
  RUBY
19
19
  end
@@ -42,7 +42,7 @@ module RailsAdmin
42
42
  end
43
43
 
44
44
  def read_only?
45
- false
45
+ model.readonly_attributes.include? property.name.to_s
46
46
  end
47
47
 
48
48
  private
@@ -12,8 +12,8 @@ module RailsAdmin
12
12
  model.new(params).extend(ObjectExtension)
13
13
  end
14
14
 
15
- def get(id)
16
- return unless object = model.where(primary_key => id).first
15
+ def get(id, scope = scoped)
16
+ return unless object = scope.where(primary_key => id).first
17
17
 
18
18
  object.extend(ObjectExtension)
19
19
  end
@@ -80,7 +80,11 @@ module RailsAdmin
80
80
  when 'postgresql'
81
81
  ::ActiveRecord::Base.connection.select_one("SELECT ''::text AS str;").values.first.encoding
82
82
  when 'mysql2'
83
- ::ActiveRecord::Base.connection.raw_connection.encoding
83
+ if RUBY_ENGINE == 'jruby'
84
+ ::ActiveRecord::Base.connection.select_one("SELECT '' AS str;").values.first.encoding
85
+ else
86
+ ::ActiveRecord::Base.connection.raw_connection.encoding
87
+ end
84
88
  when 'oracle_enhanced'
85
89
  ::ActiveRecord::Base.connection.select_one('SELECT dummy FROM DUAL').values.first.encoding
86
90
  else
@@ -11,11 +11,11 @@ module RailsAdmin
11
11
  end
12
12
 
13
13
  def name
14
- property.name.to_sym
14
+ (property.options[:as] || property.name).to_sym
15
15
  end
16
16
 
17
17
  def pretty_name
18
- property.name.to_s.tr('_', ' ').capitalize
18
+ (property.options[:as] || property.name).to_s.tr('_', ' ').capitalize
19
19
  end
20
20
 
21
21
  def type
@@ -64,7 +64,7 @@ module RailsAdmin
64
64
  end
65
65
 
66
66
  def read_only?
67
- false
67
+ model.readonly_attributes.include? property.name.to_s
68
68
  end
69
69
 
70
70
  private
@@ -18,8 +18,8 @@ module RailsAdmin
18
18
  model.new(params).extend(ObjectExtension)
19
19
  end
20
20
 
21
- def get(id)
22
- object = model.find(id)
21
+ def get(id, scope = scoped)
22
+ object = scope.find(id)
23
23
  return nil unless object
24
24
 
25
25
  object.extend(ObjectExtension)
@@ -49,7 +49,7 @@ module RailsAdmin
49
49
  (only.nil? || [only].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s)) &&
50
50
  ![except].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s) &&
51
51
  !bindings[:abstract_model].config.excluded?
52
- )
52
+ ) && (!respond_to?(:writable?) || writable?)
53
53
  end
54
54
 
55
55
  register_instance_option :authorized? do
@@ -73,11 +73,6 @@ module RailsAdmin
73
73
  false
74
74
  end
75
75
 
76
- # Render via pjax?
77
- register_instance_option :pjax? do
78
- link_target.blank?
79
- end
80
-
81
76
  # Target window [_self, _blank]
82
77
  register_instance_option :link_target do
83
78
  nil
@@ -18,21 +18,21 @@ module RailsAdmin
18
18
 
19
19
  register_instance_option :controller do
20
20
  proc do
21
- @history = @auditing_adapter&.latest(@action.auditing_versions_limit) || []
21
+ @history = @auditing_adapter&.latest(@action.auditing_versions_limit) if @action.history?
22
22
  if @action.statistics?
23
- @abstract_models = RailsAdmin::Config.visible_models(controller: self).collect(&:abstract_model)
23
+ model_configs = RailsAdmin::Config.visible_models(controller: self)
24
24
 
25
+ @abstract_models = model_configs.map(&:abstract_model)
25
26
  @most_recent_created = {}
26
27
  @count = {}
27
28
  @max = 0
28
- @abstract_models.each do |t|
29
- scope = @authorization_adapter&.query(:index, t)
30
- current_count = t.count({}, scope)
29
+ model_configs.each do |config|
30
+ scope = @authorization_adapter&.query(:index, config.abstract_model)
31
+ current_count = config.abstract_model.count({}, scope)
31
32
  @max = current_count > @max ? current_count : @max
32
- @count[t.model.name] = current_count
33
- next unless t.properties.detect { |c| c.name == :created_at }
34
-
35
- @most_recent_created[t.model.name] = t.model.last.try(:created_at)
33
+ name = config.abstract_model.model.name
34
+ @count[name] = current_count
35
+ @most_recent_created[name] = config.last_created_at
36
36
  end
37
37
  end
38
38
  render @action.template_name, status: @status_code || :ok
@@ -50,6 +50,10 @@ module RailsAdmin
50
50
  register_instance_option :statistics? do
51
51
  true
52
52
  end
53
+
54
+ register_instance_option :history? do
55
+ true
56
+ end
53
57
  end
54
58
  end
55
59
  end
@@ -46,6 +46,10 @@ module RailsAdmin
46
46
  register_instance_option :link_icon do
47
47
  'fas fa-times'
48
48
  end
49
+
50
+ register_instance_option :writable? do
51
+ !(bindings[:object] && bindings[:object].readonly?)
52
+ end
49
53
  end
50
54
  end
51
55
  end
@@ -44,6 +44,10 @@ module RailsAdmin
44
44
  register_instance_option :link_icon do
45
45
  'fas fa-pencil-alt'
46
46
  end
47
+
48
+ register_instance_option :writable? do
49
+ !(bindings[:object] && bindings[:object].readonly?)
50
+ end
47
51
  end
48
52
  end
49
53
  end
@@ -17,6 +17,7 @@ module RailsAdmin
17
17
  if request.get? # NEW
18
18
 
19
19
  @object = @abstract_model.new
20
+ @action = @action.with(@action.bindings.merge(object: @object))
20
21
  @authorization_adapter&.attributes_for(:new, @abstract_model)&.each do |name, value|
21
22
  @object.send("#{name}=", value)
22
23
  end
@@ -55,6 +56,10 @@ module RailsAdmin
55
56
  register_instance_option :link_icon do
56
57
  'fas fa-plus'
57
58
  end
59
+
60
+ register_instance_option :writable? do
61
+ !(bindings[:object] && bindings[:object].readonly?)
62
+ end
58
63
  end
59
64
  end
60
65
  end
@@ -25,10 +25,6 @@ module RailsAdmin
25
25
  register_instance_option :link_icon do
26
26
  'fas fa-eye'
27
27
  end
28
-
29
- register_instance_option :pjax? do
30
- false
31
- end
32
28
  end
33
29
  end
34
30
  end
@@ -21,7 +21,7 @@ module RailsAdmin
21
21
  am = amc.abstract_model
22
22
  wording = associated.send(amc.object_label_method)
23
23
  can_see = !am.embedded? && (show_action = v.action(:show, am, associated))
24
- can_see ? v.link_to(wording, v.url_for(action: show_action.action_name, model_name: am.to_param, id: associated.id), class: 'pjax') : ERB::Util.html_escape(wording)
24
+ can_see ? v.link_to(wording, v.url_for(action: show_action.action_name, model_name: am.to_param, id: associated.id)) : ERB::Util.html_escape(wording)
25
25
  end.to_sentence.html_safe.presence || '-'
26
26
  end
27
27
 
@@ -89,6 +89,11 @@ module RailsAdmin
89
89
  association.primary_key
90
90
  end
91
91
 
92
+ # Returns params which are to be set in modals
93
+ def associated_prepopulate_params
94
+ {}
95
+ end
96
+
92
97
  # Reader whether this is a polymorphic association
93
98
  def polymorphic?
94
99
  association.polymorphic?
@@ -252,7 +252,7 @@ module RailsAdmin
252
252
  end
253
253
 
254
254
  def editable?
255
- !(@properties && @properties.read_only?)
255
+ !((@properties && @properties.read_only?) || (bindings[:object] && bindings[:object].readonly?))
256
256
  end
257
257
 
258
258
  # Is this an association
@@ -9,7 +9,7 @@ module RailsAdmin
9
9
  RailsAdmin::Config::Fields::Types.register(self)
10
10
 
11
11
  register_instance_option :version do
12
- '1.1.1'
12
+ '1.3.1'
13
13
  end
14
14
 
15
15
  register_instance_option :css_location do
@@ -15,6 +15,13 @@ module RailsAdmin
15
15
  :long
16
16
  end
17
17
 
18
+ register_instance_option :datepicker_options do
19
+ {
20
+ allowInput: true,
21
+ altFormat: flatpickr_format,
22
+ }
23
+ end
24
+
18
25
  register_instance_option :i18n_scope do
19
26
  %i[date formats]
20
27
  end
@@ -30,14 +30,15 @@ module RailsAdmin
30
30
  '%B %d, %Y %H:%M'
31
31
  end
32
32
 
33
- register_instance_option :momentjs_format do
34
- RailsAdmin::Support::Datetime.to_momentjs(strftime_format)
33
+ register_instance_option :flatpickr_format do
34
+ RailsAdmin::Support::Datetime.to_flatpickr_format(strftime_format)
35
35
  end
36
36
 
37
37
  register_instance_option :datepicker_options do
38
38
  {
39
- showTodayButton: true,
40
- format: momentjs_format,
39
+ allowInput: true,
40
+ enableTime: true,
41
+ altFormat: flatpickr_format,
41
42
  }
42
43
  end
43
44
 
@@ -68,6 +69,10 @@ module RailsAdmin
68
69
  :form_datetime
69
70
  end
70
71
 
72
+ register_deprecated_instance_option :momentjs_format do
73
+ ActiveSupport::Deprecation.warn('The momentjs_format configuration option is deprecated, please use flatpickr_format with corresponding values here: https://flatpickr.js.org/formatting/')
74
+ end
75
+
71
76
  def form_value
72
77
  value&.in_time_zone&.strftime('%FT%T') || form_default_value
73
78
  end
@@ -25,6 +25,10 @@ module RailsAdmin
25
25
  def errors
26
26
  bindings[:object].errors[name]
27
27
  end
28
+
29
+ def associated_prepopulate_params
30
+ {associated_model_config.abstract_model.param_key => {association.foreign_key => bindings[:object].try(:id)}}
31
+ end
28
32
  end
29
33
  end
30
34
  end
@@ -28,6 +28,10 @@ module RailsAdmin
28
28
  def multiple?
29
29
  false
30
30
  end
31
+
32
+ def associated_prepopulate_params
33
+ {associated_model_config.abstract_model.param_key => {association.foreign_key => bindings[:object].try(:id)}}
34
+ end
31
35
  end
32
36
  end
33
37
  end
@@ -11,6 +11,15 @@ module RailsAdmin
11
11
  abstract_model.model.type_for_attribute(name.to_s).serialize(super)&.change(year: 2000, month: 1, day: 1)
12
12
  end
13
13
 
14
+ register_instance_option :datepicker_options do
15
+ {
16
+ allowInput: true,
17
+ altFormat: flatpickr_format,
18
+ enableTime: true,
19
+ noCalendar: true,
20
+ }
21
+ end
22
+
14
23
  register_instance_option :strftime_format do
15
24
  '%H:%M'
16
25
  end
@@ -116,6 +116,10 @@ module RailsAdmin
116
116
  all_fields.collect { |f| f.with(bindings) }.select(&:visible?).sort_by { |f| [f.order, i += 1] } # stable sort, damn
117
117
  end
118
118
 
119
+ def possible_fields
120
+ _fields(true)
121
+ end
122
+
119
123
  protected
120
124
 
121
125
  # Raw fields.
@@ -98,6 +98,14 @@ module RailsAdmin
98
98
  nil
99
99
  end
100
100
 
101
+ register_instance_option :scope do
102
+ abstract_model.scoped
103
+ end
104
+
105
+ register_instance_option :last_created_at do
106
+ abstract_model.model.last.try(:created_at) if abstract_model.properties.detect { |c| c.name == :created_at }
107
+ end
108
+
101
109
  # Act as a proxy for the base section configuration that actually
102
110
  # store the configurations.
103
111
  def method_missing(method_name, *args, &block)
@@ -32,10 +32,6 @@ module RailsAdmin
32
32
  parent.abstract_model.primary_key
33
33
  end
34
34
 
35
- register_instance_option :sort_reverse? do
36
- true # By default show latest first
37
- end
38
-
39
35
  register_instance_option :scopes do
40
36
  []
41
37
  end
@@ -51,6 +47,10 @@ module RailsAdmin
51
47
  def fields_for_table
52
48
  visible_fields.partition(&:sticky?).flatten
53
49
  end
50
+
51
+ register_deprecated_instance_option :sort_reverse do
52
+ ActiveSupport::Deprecation.warn('The sort_reverse configuration option is deprecated and has no effect.')
53
+ end
54
54
  end
55
55
  end
56
56
  end
@@ -269,9 +269,12 @@ module RailsAdmin
269
269
 
270
270
  def parent_controller=(name)
271
271
  @parent_controller = name
272
- if defined?(RailsAdmin::ApplicationController)
272
+
273
+ if defined?(RailsAdmin::ApplicationController) || defined?(RailsAdmin::MainController)
273
274
  RailsAdmin.send(:remove_const, :ApplicationController)
275
+ RailsAdmin.send(:remove_const, :MainController)
274
276
  load RailsAdmin::Engine.root.join('app/controllers/rails_admin/application_controller.rb')
277
+ load RailsAdmin::Engine.root.join('app/controllers/rails_admin/main_controller.rb')
275
278
  end
276
279
  end
277
280
 
@@ -1,8 +1,8 @@
1
1
  require 'kaminari'
2
2
  require 'nested_form'
3
- require 'rack-pjax'
4
3
  require 'rails'
5
4
  require 'rails_admin'
5
+ require 'turbo-rails'
6
6
 
7
7
  module RailsAdmin
8
8
  class Engine < Rails::Engine
@@ -22,10 +22,6 @@ module RailsAdmin
22
22
  end
23
23
  end
24
24
 
25
- initializer 'RailsAdmin setup middlewares' do |app|
26
- app.config.middleware.use Rack::Pjax
27
- end
28
-
29
25
  initializer 'RailsAdmin reload config in development' do |app|
30
26
  config.initializer_path = app.root.join('config/initializers/rails_admin.rb')
31
27
 
@@ -54,6 +50,7 @@ module RailsAdmin
54
50
  config.after_initialize do |app|
55
51
  has_session_store = app.config.middleware.to_a.any? do |m|
56
52
  m.klass.try(:<=, ActionDispatch::Session::AbstractStore) ||
53
+ m.klass.try(:<=, ActionDispatch::Session::AbstractSecureStore) ||
57
54
  m.klass.name =~ /^ActionDispatch::Session::/
58
55
  end
59
56
  loaded = app.config.middleware.to_a.map(&:name)