rails_admin 1.4.2 → 3.1.2

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 (542) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +19 -12
  3. data/README.md +46 -50
  4. data/Rakefile +15 -2
  5. data/app/assets/javascripts/rails_admin/application.js.erb +29 -0
  6. data/app/assets/javascripts/rails_admin/custom/ui.js +1 -0
  7. data/app/assets/stylesheets/rails_admin/application.scss.erb +35 -0
  8. data/app/assets/stylesheets/rails_admin/custom/mixins.scss +1 -1
  9. data/app/assets/stylesheets/rails_admin/custom/variables.scss +1 -1
  10. data/app/controllers/rails_admin/application_controller.rb +8 -3
  11. data/app/controllers/rails_admin/main_controller.rb +55 -50
  12. data/app/helpers/rails_admin/application_helper.rb +143 -62
  13. data/app/helpers/rails_admin/form_builder.rb +25 -13
  14. data/app/helpers/rails_admin/main_helper.rb +19 -42
  15. data/app/views/kaminari/ra-twitter-bootstrap/_gap.html.erb +5 -0
  16. data/app/views/kaminari/ra-twitter-bootstrap/_next_page.html.erb +9 -0
  17. data/app/views/kaminari/ra-twitter-bootstrap/_page.html.erb +9 -0
  18. data/app/views/kaminari/ra-twitter-bootstrap/_paginator.html.erb +15 -0
  19. data/app/views/kaminari/ra-twitter-bootstrap/_prev_page.html.erb +9 -0
  20. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_next_page.html.erb +9 -0
  21. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_paginator.html.erb +8 -0
  22. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_prev_page.html.erb +9 -0
  23. data/app/views/layouts/rails_admin/_head.html.erb +29 -0
  24. data/app/views/layouts/rails_admin/_navigation.html.erb +17 -0
  25. data/app/views/layouts/rails_admin/_secondary_navigation.html.erb +26 -0
  26. data/app/views/layouts/rails_admin/_sidebar_navigation.html.erb +5 -0
  27. data/app/views/layouts/rails_admin/application.html.erb +27 -0
  28. data/app/views/layouts/rails_admin/content.html.erb +22 -0
  29. data/app/views/layouts/rails_admin/modal.js.erb +7 -0
  30. data/app/views/rails_admin/main/_dashboard_history.html.erb +45 -0
  31. data/app/views/rails_admin/main/_delete_notice.html.erb +35 -0
  32. data/app/views/rails_admin/main/_form_action_text.html.erb +8 -0
  33. data/app/views/rails_admin/main/_form_boolean.html.erb +14 -0
  34. data/app/views/rails_admin/main/{_form_ck_editor.html.haml → _form_ck_editor.html.erb} +3 -3
  35. data/app/views/rails_admin/main/_form_code_mirror.html.erb +9 -0
  36. data/app/views/rails_admin/main/_form_colorpicker.html.erb +5 -0
  37. data/app/views/rails_admin/main/_form_datetime.html.erb +10 -0
  38. data/app/views/rails_admin/main/_form_enumeration.html.erb +25 -0
  39. data/app/views/rails_admin/main/_form_field.html.erb +1 -0
  40. data/app/views/rails_admin/main/_form_file_upload.html.erb +17 -0
  41. data/app/views/rails_admin/main/_form_filtering_multiselect.html.erb +49 -0
  42. data/app/views/rails_admin/main/_form_filtering_select.html.erb +33 -0
  43. data/app/views/rails_admin/main/_form_froala.html.erb +8 -0
  44. data/app/views/rails_admin/main/_form_multiple_file_upload.html.erb +20 -0
  45. data/app/views/rails_admin/main/_form_nested_many.html.erb +21 -0
  46. data/app/views/rails_admin/main/_form_nested_one.html.erb +21 -0
  47. data/app/views/rails_admin/main/_form_polymorphic_association.html.erb +32 -0
  48. data/app/views/rails_admin/main/_form_simple_mde.html.erb +8 -0
  49. data/app/views/rails_admin/main/_form_text.html.erb +1 -0
  50. data/app/views/rails_admin/main/_form_wysihtml5.html.erb +8 -0
  51. data/app/views/rails_admin/main/_submit_buttons.html.erb +25 -0
  52. data/app/views/rails_admin/main/bulk_delete.html.erb +19 -0
  53. data/app/views/rails_admin/main/dashboard.html.erb +64 -0
  54. data/app/views/rails_admin/main/delete.html.erb +21 -0
  55. data/app/views/rails_admin/main/edit.html.erb +3 -0
  56. data/app/views/rails_admin/main/export.html.erb +149 -0
  57. data/app/views/rails_admin/main/history.html.erb +80 -0
  58. data/app/views/rails_admin/main/index.html.erb +184 -0
  59. data/app/views/rails_admin/main/new.html.erb +3 -0
  60. data/app/views/rails_admin/main/show.html.erb +30 -0
  61. data/config/initializers/active_record_extensions.rb +25 -0
  62. data/config/initializers/mongoid_extensions.rb +3 -1
  63. data/config/locales/rails_admin.en.yml +11 -4
  64. data/config/routes.rb +2 -0
  65. data/lib/generators/rails_admin/importmap_formatter.rb +28 -0
  66. data/lib/generators/rails_admin/install_generator.rb +117 -5
  67. data/lib/generators/rails_admin/templates/initializer.erb +4 -3
  68. data/lib/generators/rails_admin/templates/rails_admin.js +1 -0
  69. data/lib/generators/rails_admin/templates/rails_admin.scss.erb +1 -0
  70. data/lib/generators/rails_admin/templates/rails_admin.webpacker.js +2 -0
  71. data/lib/generators/rails_admin/utils.rb +2 -0
  72. data/lib/rails_admin/abstract_model.rb +36 -16
  73. data/lib/rails_admin/adapters/active_record/association.rb +31 -2
  74. data/lib/rails_admin/adapters/active_record/object_extension.rb +31 -0
  75. data/lib/rails_admin/adapters/active_record/property.rb +4 -6
  76. data/lib/rails_admin/adapters/active_record.rb +92 -41
  77. data/lib/rails_admin/adapters/composite_primary_keys/association.rb +45 -0
  78. data/lib/rails_admin/adapters/composite_primary_keys.rb +40 -0
  79. data/lib/rails_admin/adapters/mongoid/association.rb +52 -13
  80. data/lib/rails_admin/adapters/mongoid/bson.rb +6 -5
  81. data/lib/rails_admin/adapters/mongoid/extension.rb +2 -0
  82. data/lib/rails_admin/adapters/mongoid/object_extension.rb +34 -0
  83. data/lib/rails_admin/adapters/mongoid/property.rb +7 -5
  84. data/lib/rails_admin/adapters/mongoid.rb +60 -33
  85. data/lib/rails_admin/config/actions/base.rb +28 -5
  86. data/lib/rails_admin/config/actions/bulk_delete.rb +4 -2
  87. data/lib/rails_admin/config/actions/dashboard.rb +16 -9
  88. data/lib/rails_admin/config/actions/delete.rb +11 -9
  89. data/lib/rails_admin/config/actions/edit.rb +13 -9
  90. data/lib/rails_admin/config/actions/export.rb +6 -3
  91. data/lib/rails_admin/config/actions/history_index.rb +4 -2
  92. data/lib/rails_admin/config/actions/history_show.rb +4 -2
  93. data/lib/rails_admin/config/actions/index.rb +12 -11
  94. data/lib/rails_admin/config/actions/new.rb +18 -12
  95. data/lib/rails_admin/config/actions/show.rb +3 -1
  96. data/lib/rails_admin/config/actions/show_in_app.rb +9 -3
  97. data/lib/rails_admin/config/actions.rb +6 -4
  98. data/lib/rails_admin/config/configurable.rb +25 -14
  99. data/lib/rails_admin/config/const_load_suppressor.rb +78 -0
  100. data/lib/rails_admin/config/fields/association.rb +21 -11
  101. data/lib/rails_admin/config/fields/base.rb +87 -33
  102. data/lib/rails_admin/config/fields/factories/action_text.rb +14 -0
  103. data/lib/rails_admin/config/fields/factories/active_storage.rb +6 -2
  104. data/lib/rails_admin/config/fields/factories/association.rb +12 -13
  105. data/lib/rails_admin/config/fields/factories/carrierwave.rb +6 -2
  106. data/lib/rails_admin/config/fields/factories/devise.rb +6 -2
  107. data/lib/rails_admin/config/fields/factories/dragonfly.rb +7 -3
  108. data/lib/rails_admin/config/fields/factories/enum.rb +2 -0
  109. data/lib/rails_admin/config/fields/factories/paperclip.rb +6 -2
  110. data/lib/rails_admin/config/fields/factories/password.rb +2 -0
  111. data/lib/rails_admin/config/fields/factories/shrine.rb +29 -0
  112. data/lib/rails_admin/config/fields/group.rb +3 -2
  113. data/lib/rails_admin/config/fields/types/action_text.rb +36 -0
  114. data/lib/rails_admin/config/fields/types/active_record_enum.rb +7 -19
  115. data/lib/rails_admin/config/fields/types/active_storage.rb +24 -3
  116. data/lib/rails_admin/config/fields/types/all.rb +6 -1
  117. data/lib/rails_admin/config/fields/types/belongs_to_association.rb +9 -11
  118. data/lib/rails_admin/config/fields/types/boolean.rb +38 -8
  119. data/lib/rails_admin/config/fields/types/bson_object_id.rb +2 -0
  120. data/lib/rails_admin/config/fields/types/carrierwave.rb +3 -0
  121. data/lib/rails_admin/config/fields/types/citext.rb +15 -0
  122. data/lib/rails_admin/config/fields/types/ck_editor.rb +9 -7
  123. data/lib/rails_admin/config/fields/types/code_mirror.rb +12 -12
  124. data/lib/rails_admin/config/fields/types/color.rb +10 -4
  125. data/lib/rails_admin/config/fields/types/composite_keys_belongs_to_association.rb +31 -0
  126. data/lib/rails_admin/config/fields/types/date.rb +12 -6
  127. data/lib/rails_admin/config/fields/types/datetime.rb +36 -21
  128. data/lib/rails_admin/config/fields/types/decimal.rb +11 -2
  129. data/lib/rails_admin/config/fields/types/dragonfly.rb +5 -1
  130. data/lib/rails_admin/config/fields/types/enum.rb +16 -3
  131. data/lib/rails_admin/config/fields/types/file_upload.rb +15 -4
  132. data/lib/rails_admin/config/fields/types/float.rb +11 -2
  133. data/lib/rails_admin/config/fields/types/froala.rb +11 -11
  134. data/lib/rails_admin/config/fields/types/has_and_belongs_to_many_association.rb +2 -0
  135. data/lib/rails_admin/config/fields/types/has_many_association.rb +7 -5
  136. data/lib/rails_admin/config/fields/types/has_one_association.rb +12 -14
  137. data/lib/rails_admin/config/fields/types/hidden.rb +4 -2
  138. data/lib/rails_admin/config/fields/types/inet.rb +2 -0
  139. data/lib/rails_admin/config/fields/types/integer.rb +4 -6
  140. data/lib/rails_admin/config/fields/types/json.rb +2 -0
  141. data/lib/rails_admin/config/fields/types/multiple_active_storage.rb +31 -3
  142. data/lib/rails_admin/config/fields/types/multiple_carrierwave.rb +18 -3
  143. data/lib/rails_admin/config/fields/types/multiple_file_upload.rb +23 -5
  144. data/lib/rails_admin/config/fields/types/numeric.rb +24 -0
  145. data/lib/rails_admin/config/fields/types/paperclip.rb +2 -0
  146. data/lib/rails_admin/config/fields/types/password.rb +7 -1
  147. data/lib/rails_admin/config/fields/types/polymorphic_association.rb +12 -2
  148. data/lib/rails_admin/config/fields/types/serialized.rb +2 -0
  149. data/lib/rails_admin/config/fields/types/shrine.rb +56 -0
  150. data/lib/rails_admin/config/fields/types/simple_mde.rb +10 -5
  151. data/lib/rails_admin/config/fields/types/string.rb +5 -3
  152. data/lib/rails_admin/config/fields/types/string_like.rb +25 -0
  153. data/lib/rails_admin/config/fields/types/text.rb +4 -20
  154. data/lib/rails_admin/config/fields/types/time.rb +16 -4
  155. data/lib/rails_admin/config/fields/types/timestamp.rb +2 -4
  156. data/lib/rails_admin/config/fields/types/uuid.rb +2 -0
  157. data/lib/rails_admin/config/fields/types/wysihtml5.rb +16 -10
  158. data/lib/rails_admin/config/fields/types.rb +3 -1
  159. data/lib/rails_admin/config/fields.rb +8 -3
  160. data/lib/rails_admin/config/groupable.rb +2 -0
  161. data/lib/rails_admin/config/has_description.rb +2 -0
  162. data/lib/rails_admin/config/has_fields.rb +12 -7
  163. data/lib/rails_admin/config/has_groups.rb +3 -1
  164. data/lib/rails_admin/config/hideable.rb +3 -1
  165. data/lib/rails_admin/config/inspectable.rb +3 -3
  166. data/lib/rails_admin/config/lazy_model.rb +16 -10
  167. data/lib/rails_admin/config/model.rb +27 -14
  168. data/lib/rails_admin/config/proxyable/proxy.rb +9 -9
  169. data/lib/rails_admin/config/proxyable.rb +15 -1
  170. data/lib/rails_admin/config/sections/base.rb +4 -3
  171. data/lib/rails_admin/config/sections/create.rb +2 -0
  172. data/lib/rails_admin/config/sections/edit.rb +2 -0
  173. data/lib/rails_admin/config/sections/export.rb +2 -0
  174. data/lib/rails_admin/config/sections/list.rb +22 -4
  175. data/lib/rails_admin/config/sections/modal.rb +2 -0
  176. data/lib/rails_admin/config/sections/nested.rb +2 -0
  177. data/lib/rails_admin/config/sections/show.rb +2 -0
  178. data/lib/rails_admin/config/sections/update.rb +2 -0
  179. data/lib/rails_admin/config/sections.rb +3 -1
  180. data/lib/rails_admin/config.rb +85 -50
  181. data/lib/rails_admin/engine.rb +48 -35
  182. data/lib/rails_admin/extension.rb +18 -12
  183. data/lib/rails_admin/extensions/cancancan/authorization_adapter.rb +64 -21
  184. data/lib/rails_admin/extensions/cancancan.rb +2 -0
  185. data/lib/rails_admin/extensions/controller_extension.rb +8 -0
  186. data/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +88 -42
  187. data/lib/rails_admin/extensions/paper_trail.rb +2 -0
  188. data/lib/rails_admin/extensions/pundit/authorization_adapter.rb +8 -9
  189. data/lib/rails_admin/extensions/pundit.rb +2 -0
  190. data/lib/rails_admin/support/csv_converter.rb +20 -15
  191. data/lib/rails_admin/support/datetime.rb +50 -85
  192. data/lib/rails_admin/support/es_module_processor.rb +23 -0
  193. data/lib/rails_admin/support/hash_helper.rb +8 -5
  194. data/lib/rails_admin/version.rb +41 -2
  195. data/lib/rails_admin.rb +7 -6
  196. data/lib/tasks/rails_admin.rake +19 -8
  197. data/package.json +30 -0
  198. data/src/rails_admin/base.js +29 -0
  199. data/src/rails_admin/filter-box.js +360 -0
  200. data/src/rails_admin/filtering-multiselect.js +389 -0
  201. data/src/rails_admin/filtering-select.js +308 -0
  202. data/src/rails_admin/i18n.js +18 -0
  203. data/src/rails_admin/jquery.js +3 -0
  204. data/src/rails_admin/nested-form-hooks.js +110 -0
  205. data/src/rails_admin/remote-form.js +193 -0
  206. data/src/rails_admin/sidescroll.js +20 -0
  207. data/src/rails_admin/styles/base/theming.scss +342 -0
  208. data/src/rails_admin/styles/base/variables.scss +3 -0
  209. data/src/rails_admin/styles/base.scss +27 -0
  210. data/src/rails_admin/styles/filtering-multiselect.scss +53 -0
  211. data/src/rails_admin/styles/filtering-select.scss +70 -0
  212. data/src/rails_admin/styles/widgets.scss +26 -0
  213. data/src/rails_admin/ui.js +176 -0
  214. data/src/rails_admin/vendor/jquery_nested_form.js +122 -0
  215. data/src/rails_admin/widgets.js +507 -0
  216. data/vendor/assets/fonts/rails_admin/fa-solid-900.ttf +0 -0
  217. data/vendor/assets/fonts/rails_admin/fa-solid-900.woff2 +0 -0
  218. data/vendor/assets/javascripts/rails_admin/bootstrap.js +5046 -0
  219. data/vendor/assets/javascripts/rails_admin/flatpickr-with-locales.js +11246 -0
  220. data/vendor/assets/javascripts/rails_admin/jquery-ui/data.js +41 -0
  221. data/vendor/assets/javascripts/rails_admin/jquery-ui/effect.js +1637 -0
  222. data/vendor/assets/javascripts/rails_admin/jquery-ui/ie.js +17 -0
  223. data/vendor/assets/javascripts/rails_admin/jquery-ui/keycode.js +47 -0
  224. data/vendor/assets/javascripts/rails_admin/jquery-ui/position.js +500 -0
  225. data/vendor/assets/javascripts/rails_admin/jquery-ui/safe-active-element.js +42 -0
  226. data/vendor/assets/javascripts/rails_admin/jquery-ui/scroll-parent.js +47 -0
  227. data/vendor/assets/javascripts/rails_admin/jquery-ui/unique-id.js +51 -0
  228. data/vendor/assets/javascripts/rails_admin/jquery-ui/version.js +17 -0
  229. data/vendor/assets/javascripts/rails_admin/jquery-ui/widget.js +735 -0
  230. data/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/autocomplete.js +689 -0
  231. data/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/menu.js +680 -0
  232. data/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/mouse.js +230 -0
  233. data/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/sortable.js +1561 -0
  234. data/vendor/assets/javascripts/rails_admin/jquery3.js +10881 -0
  235. data/vendor/assets/javascripts/rails_admin/popper.js +1974 -0
  236. data/vendor/assets/stylesheets/rails_admin/bootstrap/_accordion.scss +118 -0
  237. data/vendor/assets/stylesheets/rails_admin/bootstrap/_alert.scss +57 -0
  238. data/vendor/assets/stylesheets/rails_admin/bootstrap/_badge.scss +29 -0
  239. data/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumb.scss +28 -0
  240. data/vendor/assets/stylesheets/rails_admin/bootstrap/_button-group.scss +139 -0
  241. data/vendor/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +111 -0
  242. data/vendor/assets/stylesheets/rails_admin/bootstrap/_card.scss +216 -0
  243. data/vendor/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +229 -0
  244. data/vendor/assets/stylesheets/rails_admin/bootstrap/_close.scss +40 -0
  245. data/vendor/assets/stylesheets/rails_admin/bootstrap/_containers.scss +41 -0
  246. data/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdown.scss +240 -0
  247. data/vendor/assets/stylesheets/rails_admin/bootstrap/_forms.scss +9 -0
  248. data/vendor/assets/stylesheets/rails_admin/bootstrap/_functions.scss +302 -0
  249. data/vendor/assets/stylesheets/rails_admin/bootstrap/_grid.scss +33 -0
  250. data/vendor/assets/stylesheets/rails_admin/bootstrap/_helpers.scss +9 -0
  251. data/vendor/assets/stylesheets/rails_admin/bootstrap/_images.scss +42 -0
  252. data/vendor/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +174 -0
  253. data/vendor/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +43 -0
  254. data/vendor/assets/stylesheets/rails_admin/bootstrap/_modal.scss +209 -0
  255. data/vendor/assets/stylesheets/rails_admin/bootstrap/_nav.scss +139 -0
  256. data/vendor/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +335 -0
  257. data/vendor/assets/stylesheets/rails_admin/bootstrap/_offcanvas.scss +83 -0
  258. data/vendor/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +64 -0
  259. data/vendor/assets/stylesheets/rails_admin/bootstrap/_placeholders.scss +51 -0
  260. data/vendor/assets/stylesheets/rails_admin/bootstrap/_popover.scss +158 -0
  261. data/vendor/assets/stylesheets/rails_admin/bootstrap/_progress.scss +48 -0
  262. data/vendor/assets/stylesheets/rails_admin/bootstrap/_reboot.scss +625 -0
  263. data/vendor/assets/stylesheets/rails_admin/bootstrap/_root.scss +54 -0
  264. data/vendor/assets/stylesheets/rails_admin/bootstrap/_spinners.scss +69 -0
  265. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tables.scss +155 -0
  266. data/vendor/assets/stylesheets/rails_admin/bootstrap/_toasts.scss +51 -0
  267. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +115 -0
  268. data/vendor/assets/stylesheets/rails_admin/bootstrap/_transitions.scss +27 -0
  269. data/vendor/assets/stylesheets/rails_admin/bootstrap/_type.scss +104 -0
  270. data/vendor/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +630 -0
  271. data/vendor/assets/stylesheets/rails_admin/bootstrap/_variables.scss +1641 -0
  272. data/vendor/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +53 -0
  273. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_floating-labels.scss +63 -0
  274. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-check.scss +152 -0
  275. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-control.scss +219 -0
  276. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-range.scss +91 -0
  277. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-select.scss +72 -0
  278. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-text.scss +11 -0
  279. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_input-group.scss +121 -0
  280. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_labels.scss +36 -0
  281. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_validation.scss +12 -0
  282. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_clearfix.scss +3 -0
  283. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_colored-links.scss +12 -0
  284. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_position.scss +30 -0
  285. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_ratio.scss +26 -0
  286. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stacks.scss +15 -0
  287. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stretched-link.scss +15 -0
  288. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_text-truncation.scss +7 -0
  289. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_visually-hidden.scss +8 -0
  290. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_vr.scss +8 -0
  291. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alert.scss +11 -0
  292. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_backdrop.scss +14 -0
  293. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +78 -0
  294. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_box-shadow.scss +18 -0
  295. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_breakpoints.scss +127 -0
  296. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +133 -0
  297. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_caret.scss +64 -0
  298. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +9 -0
  299. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_color-scheme.scss +7 -0
  300. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_container.scss +9 -0
  301. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_deprecate.scss +10 -0
  302. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +144 -0
  303. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +47 -0
  304. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +151 -0
  305. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +16 -0
  306. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +24 -0
  307. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_lists.scss +7 -0
  308. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +31 -0
  309. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-text.scss +17 -0
  310. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-variants.scss +21 -0
  311. data/{app/assets/stylesheets/rails_admin/bootstrap/mixins/_text-overflow.scss → vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_text-truncate.scss} +2 -2
  312. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_transition.scss +26 -0
  313. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_utilities.scss +89 -0
  314. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_visually-hidden.scss +29 -0
  315. data/vendor/assets/stylesheets/rails_admin/bootstrap/utilities/_api.scss +47 -0
  316. data/vendor/assets/stylesheets/rails_admin/bootstrap/vendor/_rfs.scss +354 -0
  317. data/vendor/assets/stylesheets/rails_admin/flatpickr.css +791 -0
  318. data/vendor/assets/stylesheets/rails_admin/font-awesome.scss +6351 -0
  319. metadata +218 -374
  320. data/app/assets/images/rails_admin/aristo/images/bg_fallback.png +0 -0
  321. data/app/assets/images/rails_admin/aristo/images/icon_sprite.png +0 -0
  322. data/app/assets/images/rails_admin/aristo/images/progress_bar.gif +0 -0
  323. data/app/assets/images/rails_admin/aristo/images/slider_handles.png +0 -0
  324. data/app/assets/images/rails_admin/aristo/images/ui-icons_222222_256x240.png +0 -0
  325. data/app/assets/images/rails_admin/aristo/images/ui-icons_454545_256x240.png +0 -0
  326. data/app/assets/images/rails_admin/bootstrap/glyphicons-halflings-white.png +0 -0
  327. data/app/assets/images/rails_admin/bootstrap/glyphicons-halflings.png +0 -0
  328. data/app/assets/images/rails_admin/bullet_black.png +0 -0
  329. data/app/assets/images/rails_admin/bullet_white.png +0 -0
  330. data/app/assets/images/rails_admin/calendar.png +0 -0
  331. data/app/assets/images/rails_admin/clock.png +0 -0
  332. data/app/assets/images/rails_admin/colorpicker/colorpicker_background.png +0 -0
  333. data/app/assets/images/rails_admin/colorpicker/colorpicker_hex.png +0 -0
  334. data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_b.png +0 -0
  335. data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_h.png +0 -0
  336. data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_s.png +0 -0
  337. data/app/assets/images/rails_admin/colorpicker/colorpicker_indic.gif +0 -0
  338. data/app/assets/images/rails_admin/colorpicker/colorpicker_overlay.png +0 -0
  339. data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_b.png +0 -0
  340. data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_g.png +0 -0
  341. data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_r.png +0 -0
  342. data/app/assets/images/rails_admin/colorpicker/colorpicker_select.gif +0 -0
  343. data/app/assets/images/rails_admin/colorpicker/colorpicker_submit.png +0 -0
  344. data/app/assets/images/rails_admin/colorpicker/custom_background.png +0 -0
  345. data/app/assets/images/rails_admin/colorpicker/custom_hex.png +0 -0
  346. data/app/assets/images/rails_admin/colorpicker/custom_hsb_b.png +0 -0
  347. data/app/assets/images/rails_admin/colorpicker/custom_hsb_h.png +0 -0
  348. data/app/assets/images/rails_admin/colorpicker/custom_hsb_s.png +0 -0
  349. data/app/assets/images/rails_admin/colorpicker/custom_indic.gif +0 -0
  350. data/app/assets/images/rails_admin/colorpicker/custom_rgb_b.png +0 -0
  351. data/app/assets/images/rails_admin/colorpicker/custom_rgb_g.png +0 -0
  352. data/app/assets/images/rails_admin/colorpicker/custom_rgb_r.png +0 -0
  353. data/app/assets/images/rails_admin/colorpicker/custom_submit.png +0 -0
  354. data/app/assets/images/rails_admin/colorpicker/select.png +0 -0
  355. data/app/assets/images/rails_admin/colorpicker/select2.png +0 -0
  356. data/app/assets/images/rails_admin/colorpicker/slider.png +0 -0
  357. data/app/assets/images/rails_admin/logo.png +0 -0
  358. data/app/assets/images/rails_admin/magnifier.png +0 -0
  359. data/app/assets/images/rails_admin/multiselect/icon_sprite.png +0 -0
  360. data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-n-dark.png +0 -0
  361. data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-n-light.png +0 -0
  362. data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-s-dark.png +0 -0
  363. data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-s-light.png +0 -0
  364. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-affix.js +0 -142
  365. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-alert.js +0 -92
  366. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-button.js +0 -110
  367. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-carousel.js +0 -223
  368. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-collapse.js +0 -170
  369. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-dropdown.js +0 -151
  370. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-modal.js +0 -280
  371. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-popover.js +0 -113
  372. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-scrollspy.js +0 -170
  373. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-tab.js +0 -128
  374. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-tooltip.js +0 -457
  375. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-transition.js +0 -59
  376. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-typeahead.js +0 -1782
  377. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap.js +0 -13
  378. data/app/assets/javascripts/rails_admin/custom/ui.coffee +0 -1
  379. data/app/assets/javascripts/rails_admin/jquery-ui.js.erb +0 -8
  380. data/app/assets/javascripts/rails_admin/jquery.colorpicker.js +0 -484
  381. data/app/assets/javascripts/rails_admin/jquery.pjax.js +0 -743
  382. data/app/assets/javascripts/rails_admin/ra.filter-box.js +0 -226
  383. data/app/assets/javascripts/rails_admin/ra.filtering-multiselect.js +0 -331
  384. data/app/assets/javascripts/rails_admin/ra.filtering-select.js +0 -292
  385. data/app/assets/javascripts/rails_admin/ra.i18n.coffee +0 -10
  386. data/app/assets/javascripts/rails_admin/ra.nested-form-hooks.coffee +0 -55
  387. data/app/assets/javascripts/rails_admin/ra.remote-form.js +0 -155
  388. data/app/assets/javascripts/rails_admin/ra.widgets.coffee +0 -350
  389. data/app/assets/javascripts/rails_admin/rails_admin.js +0 -19
  390. data/app/assets/javascripts/rails_admin/ui.coffee +0 -102
  391. data/app/assets/stylesheets/rails_admin/aristo/images/bg_fallback.png +0 -0
  392. data/app/assets/stylesheets/rails_admin/aristo/images/icon_sprite.png +0 -0
  393. data/app/assets/stylesheets/rails_admin/aristo/images/progress_bar.gif +0 -0
  394. data/app/assets/stylesheets/rails_admin/aristo/images/slider_handles.png +0 -0
  395. data/app/assets/stylesheets/rails_admin/aristo/images/ui-icons_222222_256x240.png +0 -0
  396. data/app/assets/stylesheets/rails_admin/aristo/images/ui-icons_454545_256x240.png +0 -0
  397. data/app/assets/stylesheets/rails_admin/aristo/jquery-ui-1.8.7.custom.scss +0 -733
  398. data/app/assets/stylesheets/rails_admin/base/font-awesome-4-compability.scss +0 -153
  399. data/app/assets/stylesheets/rails_admin/base/theming.scss +0 -341
  400. data/app/assets/stylesheets/rails_admin/base/variables.scss +0 -1
  401. data/app/assets/stylesheets/rails_admin/bootstrap/_alerts.scss +0 -68
  402. data/app/assets/stylesheets/rails_admin/bootstrap/_badges.scss +0 -57
  403. data/app/assets/stylesheets/rails_admin/bootstrap/_breadcrumbs.scss +0 -26
  404. data/app/assets/stylesheets/rails_admin/bootstrap/_button-groups.scss +0 -240
  405. data/app/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +0 -157
  406. data/app/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +0 -243
  407. data/app/assets/stylesheets/rails_admin/bootstrap/_close.scss +0 -35
  408. data/app/assets/stylesheets/rails_admin/bootstrap/_code.scss +0 -68
  409. data/app/assets/stylesheets/rails_admin/bootstrap/_component-animations.scss +0 -35
  410. data/app/assets/stylesheets/rails_admin/bootstrap/_dropdowns.scss +0 -215
  411. data/app/assets/stylesheets/rails_admin/bootstrap/_forms.scss +0 -538
  412. data/app/assets/stylesheets/rails_admin/bootstrap/_glyphicons.scss +0 -237
  413. data/app/assets/stylesheets/rails_admin/bootstrap/_grid.scss +0 -84
  414. data/app/assets/stylesheets/rails_admin/bootstrap/_input-groups.scss +0 -166
  415. data/app/assets/stylesheets/rails_admin/bootstrap/_jumbotron.scss +0 -48
  416. data/app/assets/stylesheets/rails_admin/bootstrap/_labels.scss +0 -66
  417. data/app/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +0 -131
  418. data/app/assets/stylesheets/rails_admin/bootstrap/_media.scss +0 -56
  419. data/app/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +0 -39
  420. data/app/assets/stylesheets/rails_admin/bootstrap/_modals.scss +0 -150
  421. data/app/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +0 -659
  422. data/app/assets/stylesheets/rails_admin/bootstrap/_navs.scss +0 -242
  423. data/app/assets/stylesheets/rails_admin/bootstrap/_normalize.scss +0 -425
  424. data/app/assets/stylesheets/rails_admin/bootstrap/_pager.scss +0 -55
  425. data/app/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +0 -88
  426. data/app/assets/stylesheets/rails_admin/bootstrap/_panels.scss +0 -243
  427. data/app/assets/stylesheets/rails_admin/bootstrap/_popovers.scss +0 -133
  428. data/app/assets/stylesheets/rails_admin/bootstrap/_print.scss +0 -101
  429. data/app/assets/stylesheets/rails_admin/bootstrap/_progress-bars.scss +0 -105
  430. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-embed.scss +0 -34
  431. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-utilities.scss +0 -174
  432. data/app/assets/stylesheets/rails_admin/bootstrap/_scaffolding.scss +0 -150
  433. data/app/assets/stylesheets/rails_admin/bootstrap/_tables.scss +0 -233
  434. data/app/assets/stylesheets/rails_admin/bootstrap/_theme.scss +0 -258
  435. data/app/assets/stylesheets/rails_admin/bootstrap/_thumbnails.scss +0 -38
  436. data/app/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +0 -95
  437. data/app/assets/stylesheets/rails_admin/bootstrap/_type.scss +0 -304
  438. data/app/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +0 -57
  439. data/app/assets/stylesheets/rails_admin/bootstrap/_variables.scss +0 -850
  440. data/app/assets/stylesheets/rails_admin/bootstrap/_wells.scss +0 -29
  441. data/app/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +0 -50
  442. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_alerts.scss +0 -14
  443. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_background-variant.scss +0 -11
  444. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +0 -18
  445. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +0 -50
  446. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_center-block.scss +0 -7
  447. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +0 -22
  448. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +0 -84
  449. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +0 -58
  450. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_grid-framework.scss +0 -81
  451. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +0 -122
  452. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_hide-text.scss +0 -21
  453. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +0 -34
  454. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_labels.scss +0 -12
  455. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +0 -31
  456. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-divider.scss +0 -10
  457. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-vertical-align.scss +0 -9
  458. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_opacity.scss +0 -8
  459. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +0 -23
  460. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_panels.scss +0 -24
  461. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_progress-bar.scss +0 -10
  462. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-filter.scss +0 -8
  463. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_responsive-visibility.scss +0 -21
  464. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_size.scss +0 -10
  465. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_tab-focus.scss +0 -9
  466. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_table-row.scss +0 -28
  467. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_text-emphasis.scss +0 -11
  468. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_vendor-prefixes.scss +0 -219
  469. data/app/assets/stylesheets/rails_admin/jquery.colorpicker.scss +0 -182
  470. data/app/assets/stylesheets/rails_admin/ra.filtering-multiselect.scss +0 -88
  471. data/app/assets/stylesheets/rails_admin/ra.widgets.scss +0 -13
  472. data/app/assets/stylesheets/rails_admin/rails_admin.scss.erb +0 -109
  473. data/app/assets/stylesheets/rails_admin/themes/cerulean/mixins.scss +0 -0
  474. data/app/assets/stylesheets/rails_admin/themes/cerulean/theming.scss +0 -133
  475. data/app/assets/stylesheets/rails_admin/themes/cerulean/variables.scss +0 -857
  476. data/app/assets/stylesheets/rails_admin/themes/default/mixins.scss +0 -8
  477. data/app/assets/stylesheets/rails_admin/themes/default/theming.scss +0 -11
  478. data/app/assets/stylesheets/rails_admin/themes/default/variables.scss +0 -12
  479. data/app/views/kaminari/ra-twitter-bootstrap/_gap.html.haml +0 -2
  480. data/app/views/kaminari/ra-twitter-bootstrap/_next_page.html.haml +0 -4
  481. data/app/views/kaminari/ra-twitter-bootstrap/_page.html.haml +0 -4
  482. data/app/views/kaminari/ra-twitter-bootstrap/_paginator.html.haml +0 -9
  483. data/app/views/kaminari/ra-twitter-bootstrap/_prev_page.html.haml +0 -4
  484. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_next_page.html.haml +0 -4
  485. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_paginator.html.haml +0 -4
  486. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_prev_page.html.haml +0 -4
  487. data/app/views/layouts/rails_admin/_navigation.html.haml +0 -12
  488. data/app/views/layouts/rails_admin/_secondary_navigation.html.haml +0 -10
  489. data/app/views/layouts/rails_admin/_sidebar_navigation.html.haml +0 -2
  490. data/app/views/layouts/rails_admin/application.html.haml +0 -24
  491. data/app/views/layouts/rails_admin/pjax.html.haml +0 -16
  492. data/app/views/rails_admin/main/_dashboard_history.html.haml +0 -21
  493. data/app/views/rails_admin/main/_delete_notice.html.haml +0 -24
  494. data/app/views/rails_admin/main/_form_boolean.html.haml +0 -3
  495. data/app/views/rails_admin/main/_form_code_mirror.html.haml +0 -9
  496. data/app/views/rails_admin/main/_form_colorpicker.html.haml +0 -1
  497. data/app/views/rails_admin/main/_form_datetime.html.haml +0 -5
  498. data/app/views/rails_admin/main/_form_enumeration.html.haml +0 -18
  499. data/app/views/rails_admin/main/_form_field.html.haml +0 -1
  500. data/app/views/rails_admin/main/_form_file_upload.html.haml +0 -17
  501. data/app/views/rails_admin/main/_form_filtering_multiselect.html.haml +0 -48
  502. data/app/views/rails_admin/main/_form_filtering_select.html.haml +0 -37
  503. data/app/views/rails_admin/main/_form_froala.html.haml +0 -8
  504. data/app/views/rails_admin/main/_form_multiple_file_upload.html.haml +0 -14
  505. data/app/views/rails_admin/main/_form_nested_many.html.haml +0 -15
  506. data/app/views/rails_admin/main/_form_nested_one.html.haml +0 -17
  507. data/app/views/rails_admin/main/_form_polymorphic_association.html.haml +0 -11
  508. data/app/views/rails_admin/main/_form_simple_mde.haml +0 -8
  509. data/app/views/rails_admin/main/_form_text.html.haml +0 -1
  510. data/app/views/rails_admin/main/_form_wysihtml5.html.haml +0 -8
  511. data/app/views/rails_admin/main/_submit_buttons.html.haml +0 -16
  512. data/app/views/rails_admin/main/bulk_delete.html.haml +0 -11
  513. data/app/views/rails_admin/main/dashboard.html.haml +0 -35
  514. data/app/views/rails_admin/main/delete.html.haml +0 -18
  515. data/app/views/rails_admin/main/edit.html.haml +0 -2
  516. data/app/views/rails_admin/main/export.html.haml +0 -92
  517. data/app/views/rails_admin/main/history.html.haml +0 -51
  518. data/app/views/rails_admin/main/index.html.haml +0 -122
  519. data/app/views/rails_admin/main/new.html.haml +0 -2
  520. data/app/views/rails_admin/main/show.html.haml +0 -16
  521. data/config/initializers/devise_patch.rb +0 -9
  522. data/config/initializers/haml.rb +0 -5
  523. data/lib/rails_admin/adapters/active_record/abstract_object.rb +0 -32
  524. data/lib/rails_admin/adapters/mongoid/abstract_object.rb +0 -42
  525. data/lib/rails_admin/bootstrap-sass/compass_functions.rb +0 -28
  526. data/lib/rails_admin/bootstrap-sass/sass_functions.rb +0 -18
  527. data/lib/rails_admin/bootstrap-sass.rb +0 -45
  528. data/lib/rails_admin/config/fields/factories/refile.rb +0 -25
  529. data/lib/rails_admin/config/fields/types/refile.rb +0 -27
  530. data/lib/rails_admin/extensions/cancan/authorization_adapter.rb +0 -57
  531. data/lib/rails_admin/extensions/cancan.rb +0 -3
  532. data/lib/rails_admin/extensions/history/auditing_adapter.rb +0 -37
  533. data/lib/rails_admin/extensions/history/history.rb +0 -44
  534. data/lib/rails_admin/extensions/history.rb +0 -3
  535. data/lib/rails_admin/support/i18n.rb +0 -43
  536. data/vendor/assets/javascripts/rails_admin/bootstrap-datetimepicker.js +0 -2444
  537. data/vendor/assets/javascripts/rails_admin/moment-with-locales.js +0 -9977
  538. data/vendor/assets/stylesheets/rails_admin/_bootstrap-datetimepicker.scss +0 -343
  539. data/vendor/assets/stylesheets/rails_admin/bootstrap-datetimepicker-build.scss +0 -16
  540. data/{app/assets/stylesheets/rails_admin → src/rails_admin/styles}/base/README.txt +0 -0
  541. data/{app/assets/stylesheets/rails_admin → src/rails_admin/styles}/base/mixins.scss +0 -0
  542. data/{app → vendor}/assets/stylesheets/rails_admin/bootstrap/mixins/_resize.scss +1 -1
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  module Fields
@@ -19,10 +21,16 @@ module RailsAdmin
19
21
  nil
20
22
  end
21
23
 
22
- register_instance_option :delete_key do
24
+ register_instance_option :keep_value do
23
25
  nil
24
26
  end
25
27
 
28
+ register_instance_option :delete_value do
29
+ nil
30
+ end
31
+
32
+ register_deprecated_instance_option :delete_key, :delete_value
33
+
26
34
  register_instance_option :pretty_value do
27
35
  if value.presence
28
36
  v = bindings[:view]
@@ -30,19 +38,21 @@ module RailsAdmin
30
38
  if image
31
39
  thumb_url = resource_url(thumb_method)
32
40
  image_html = v.image_tag(thumb_url, class: 'img-thumbnail')
33
- url != thumb_url ? v.link_to(image_html, url, target: '_blank') : image_html
41
+ url == thumb_url ? image_html : v.link_to(image_html, url, target: '_blank', rel: 'noopener noreferrer')
34
42
  else
35
- v.link_to(value, url, target: '_blank')
43
+ display_value = value.respond_to?(:filename) ? value.filename : value
44
+ v.link_to(display_value, url, target: '_blank', rel: 'noopener noreferrer')
36
45
  end
37
46
  end
38
47
  end
39
48
 
40
49
  register_instance_option :image? do
41
- (url = resource_url.to_s) && url.split('.').last =~ /jpg|jpeg|png|gif|svg/i
50
+ mime_type = Mime::Type.lookup_by_extension(resource_url.to_s.split('.').last)
51
+ mime_type.to_s.match?(/^image/)
42
52
  end
43
53
 
44
54
  def resource_url(_thumb = false)
45
- raise('not implemented')
55
+ raise 'not implemented'
46
56
  end
47
57
  end
48
58
 
@@ -67,6 +77,14 @@ module RailsAdmin
67
77
  nil
68
78
  end
69
79
 
80
+ register_instance_option :keep_method do
81
+ nil
82
+ end
83
+
84
+ register_instance_option :reorderable? do
85
+ false
86
+ end
87
+
70
88
  register_instance_option :export_value do
71
89
  attachments.map(&:resource_url).map(&:to_s).join(',')
72
90
  end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/base'
4
+
5
+ module RailsAdmin
6
+ module Config
7
+ module Fields
8
+ module Types
9
+ class Numeric < RailsAdmin::Config::Fields::Base
10
+ # Register field type for the type loader
11
+ RailsAdmin::Config::Fields::Types.register(self)
12
+
13
+ register_instance_option :filter_operators do
14
+ %w[default between] + (required? ? [] : %w[_separator _not_null _null])
15
+ end
16
+
17
+ register_instance_option :view_helper do
18
+ :number_field
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/base'
2
4
  require 'rails_admin/config/fields/types/file_upload'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/string'
2
4
 
3
5
  module RailsAdmin
@@ -13,7 +15,11 @@ module RailsAdmin
13
15
  end
14
16
 
15
17
  def parse_input(params)
16
- params[name] = params[name].presence
18
+ if params[name].present?
19
+ params[name] = params[name]
20
+ else
21
+ params.delete(name)
22
+ end
17
23
  end
18
24
 
19
25
  register_instance_option :formatted_value do
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/belongs_to_association'
2
4
 
3
5
  module RailsAdmin
@@ -45,12 +47,13 @@ module RailsAdmin
45
47
  [children_fields]
46
48
  end
47
49
 
48
- register_instance_option :eager_load? do
50
+ register_instance_option :eager_load do
49
51
  false
50
52
  end
51
53
 
52
54
  def associated_collection(type)
53
55
  return [] if type.blank?
56
+
54
57
  config = RailsAdmin.config(type)
55
58
  config.abstract_model.all.collect do |object|
56
59
  [object.send(config.object_label_method), object.id]
@@ -58,7 +61,7 @@ module RailsAdmin
58
61
  end
59
62
 
60
63
  def associated_model_config
61
- @associated_model_config ||= association.klass.collect { |type| RailsAdmin.config(type) }.select { |config| !config.excluded? }
64
+ @associated_model_config ||= association.klass.collect { |type| RailsAdmin.config(type) }.reject(&:excluded?)
62
65
  end
63
66
 
64
67
  def polymorphic_type_collection
@@ -78,6 +81,13 @@ module RailsAdmin
78
81
  def value
79
82
  bindings[:object].send(association.name)
80
83
  end
84
+
85
+ def parse_input(params)
86
+ if (type_value = params[association.foreign_type.to_sym]).present?
87
+ config = associated_model_config.find { |c| type_value == c.abstract_model.model.name }
88
+ params[association.foreign_type.to_sym] = config.abstract_model.base_class.name if config
89
+ end
90
+ end
81
91
  end
82
92
  end
83
93
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/text'
2
4
 
3
5
  module RailsAdmin
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/types/file_upload'
4
+
5
+ module RailsAdmin
6
+ module Config
7
+ module Fields
8
+ module Types
9
+ class Shrine < RailsAdmin::Config::Fields::Types::FileUpload
10
+ RailsAdmin::Config::Fields::Types.register(self)
11
+
12
+ register_instance_option :thumb_method do
13
+ unless defined? @thumb_method
14
+ @thumb_method = begin
15
+ next nil unless bindings[:object].respond_to?("#{name}_derivatives")
16
+
17
+ derivatives = bindings[:object].public_send("#{name}_derivatives")
18
+
19
+ if derivatives.key?(:thumb)
20
+ :thumb
21
+ elsif derivatives.key?(:thumbnail)
22
+ :thumbnail
23
+ else
24
+ derivatives.keys.first
25
+ end
26
+ end
27
+ end
28
+ @thumb_method
29
+ end
30
+
31
+ register_instance_option :delete_method do
32
+ "remove_#{name}" if bindings[:object].respond_to?("remove_#{name}")
33
+ end
34
+
35
+ register_instance_option :cache_method do
36
+ name if bindings[:object].try("cached_#{name}_data")
37
+ end
38
+
39
+ register_instance_option :cache_value do
40
+ bindings[:object].try("cached_#{name}_data")
41
+ end
42
+
43
+ register_instance_option :link_name do
44
+ value.original_filename
45
+ end
46
+
47
+ def resource_url(thumb = nil)
48
+ return nil unless value
49
+
50
+ thumb && bindings[:object].public_send(:"#{name}", thumb).try(:url) || value.url
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -1,10 +1,12 @@
1
- require 'rails_admin/config/fields/base'
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/types/text'
2
4
 
3
5
  module RailsAdmin
4
6
  module Config
5
7
  module Fields
6
8
  module Types
7
- class SimpleMDE < RailsAdmin::Config::Fields::Types::Text
9
+ class SimpleMDE < Text
8
10
  # Register field type for the type loader
9
11
  RailsAdmin::Config::Fields::Types.register(self)
10
12
 
@@ -14,13 +16,16 @@ module RailsAdmin
14
16
  nil
15
17
  end
16
18
 
17
- # Use this if you want to point to a cloud instance of the base SimpleMDE
19
+ register_instance_option :version do
20
+ '1.11.2'
21
+ end
22
+
18
23
  register_instance_option :js_location do
19
- "#{Rails.application.config.assets.prefix}/simplemde.min.js"
24
+ "https://cdnjs.cloudflare.com/ajax/libs/simplemde/#{version}/simplemde.min.js"
20
25
  end
21
26
 
22
27
  register_instance_option :css_location do
23
- "#{Rails.application.config.assets.prefix}/simplemde.min.css"
28
+ "https://cdnjs.cloudflare.com/ajax/libs/simplemde/#{version}/simplemde.min.css"
24
29
  end
25
30
 
26
31
  register_instance_option :partial do
@@ -1,10 +1,12 @@
1
- require 'rails_admin/config/fields/base'
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/types/string_like'
2
4
 
3
5
  module RailsAdmin
4
6
  module Config
5
7
  module Fields
6
8
  module Types
7
- class String < RailsAdmin::Config::Fields::Base
9
+ class String < StringLike
8
10
  RailsAdmin::Config::Fields::Types.register(self)
9
11
 
10
12
  def input_size
@@ -20,7 +22,7 @@ module RailsAdmin
20
22
  end
21
23
 
22
24
  def generic_help
23
- text = (required? ? I18n.translate('admin.form.required') : I18n.translate('admin.form.optional')) + '. '
25
+ text = "#{required? ? I18n.translate('admin.form.required') : I18n.translate('admin.form.optional')}. "
24
26
  if valid_length.present? && valid_length[:is].present?
25
27
  text += "#{I18n.translate('admin.form.char_length_of').capitalize} #{valid_length[:is]}."
26
28
  else
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/base'
4
+
5
+ module RailsAdmin
6
+ module Config
7
+ module Fields
8
+ module Types
9
+ class StringLike < RailsAdmin::Config::Fields::Base
10
+ register_instance_option :filter_operators do
11
+ %w[_discard like not_like is starts_with ends_with] + (required? ? [] : %w[_separator _present _blank])
12
+ end
13
+
14
+ register_instance_option :treat_empty_as_nil? do
15
+ properties.try(:nullable?)
16
+ end
17
+
18
+ def parse_input(params)
19
+ params[name] = params[name].presence if params.key?(name) && treat_empty_as_nil?
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,31 +1,15 @@
1
- require 'rails_admin/config/fields/base'
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/types/string_like'
2
4
 
3
5
  module RailsAdmin
4
6
  module Config
5
7
  module Fields
6
8
  module Types
7
- class Text < RailsAdmin::Config::Fields::Base
9
+ class Text < StringLike
8
10
  # Register field type for the type loader
9
11
  RailsAdmin::Config::Fields::Types.register(self)
10
12
 
11
- [:ckeditor, :ckeditor_base_location, :ckeditor_config_js, :ckeditor_location].each do |key|
12
- register_deprecated_instance_option key do
13
- raise("The 'field(:foo){ ckeditor true }' style DSL is deprecated. Please use 'field :foo, :ck_editor' instead.")
14
- end
15
- end
16
-
17
- [:codemirror, :codemirror_assets, :codemirror_config, :codemirror_css_location, :codemirror_js_location].each do |key|
18
- register_deprecated_instance_option key do
19
- raise("The 'field(:foo){ codemirror true }' style DSL is deprecated. Please use 'field :foo, :code_mirror' instead.")
20
- end
21
- end
22
-
23
- [:bootstrap_wysihtml5, :bootstrap_wysihtml5_config_options, :bootstrap_wysihtml5_css_location, :bootstrap_wysihtml5_js_location].each do |key|
24
- register_deprecated_instance_option key do
25
- raise("The 'field(:foo){ bootstrap_wysihtml5 true }' style DSL is deprecated. Please use 'field :foo, :wysihtml5' instead.")
26
- end
27
- end
28
-
29
13
  register_instance_option :html_attributes do
30
14
  {
31
15
  required: required?,
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/datetime'
2
4
 
3
5
  module RailsAdmin
@@ -8,10 +10,20 @@ module RailsAdmin
8
10
  RailsAdmin::Config::Fields::Types.register(self)
9
11
 
10
12
  def parse_value(value)
11
- parent_value = super(value)
12
- return unless parent_value
13
- value_with_tz = parent_value.in_time_zone
14
- ::DateTime.parse(value_with_tz.strftime('%Y-%m-%d %H:%M:%S'))
13
+ abstract_model.model.type_for_attribute(name.to_s).serialize(super)&.change(year: 2000, month: 1, day: 1)
14
+ end
15
+
16
+ register_instance_option :filter_operators do
17
+ %w[default between] + (required? ? [] : %w[_separator _not_null _null])
18
+ end
19
+
20
+ register_instance_option :datepicker_options do
21
+ {
22
+ allowInput: true,
23
+ altFormat: flatpickr_format,
24
+ enableTime: true,
25
+ noCalendar: true,
26
+ }
15
27
  end
16
28
 
17
29
  register_instance_option :strftime_format do
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/datetime'
2
4
 
3
5
  module RailsAdmin
@@ -7,10 +9,6 @@ module RailsAdmin
7
9
  class Timestamp < RailsAdmin::Config::Fields::Types::Datetime
8
10
  # Register field type for the type loader
9
11
  RailsAdmin::Config::Fields::Types.register(self)
10
-
11
- @format = :long
12
- @i18n_scope = [:time, :formats]
13
- @js_plugin_options = {}
14
12
  end
15
13
  end
16
14
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/types/string'
2
4
 
3
5
  module RailsAdmin
@@ -1,35 +1,41 @@
1
- require 'rails_admin/config/fields/base'
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/fields/types/text'
2
4
 
3
5
  module RailsAdmin
4
6
  module Config
5
7
  module Fields
6
8
  module Types
7
- class Wysihtml5 < RailsAdmin::Config::Fields::Types::Text
9
+ class Wysihtml5 < Text
8
10
  # Register field type for the type loader
9
11
  RailsAdmin::Config::Fields::Types.register(self)
10
12
 
11
13
  # If you want to have a different toolbar configuration for wysihtml5
12
14
  # you can use a Ruby hash to configure these options:
13
- # https://github.com/jhollingworth/bootstrap-wysihtml5/#advanced
15
+ # https://github.com/bootstrap-wysiwyg/bootstrap3-wysiwyg
14
16
  register_instance_option :config_options do
15
- nil
17
+ {
18
+ toolbar: {
19
+ fa: true,
20
+ },
21
+ }
22
+ end
23
+
24
+ register_instance_option :version do
25
+ '0.3.3'
16
26
  end
17
27
 
18
28
  register_instance_option :css_location do
19
- ActionController::Base.helpers.asset_path('bootstrap-wysihtml5/index.css')
29
+ "https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-wysiwyg/#{version}/bootstrap3-wysihtml5.min.css"
20
30
  end
21
31
 
22
32
  register_instance_option :js_location do
23
- ActionController::Base.helpers.asset_path('bootstrap-wysihtml5/index.js')
33
+ "https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-wysiwyg/#{version}/bootstrap3-wysihtml5.all.min.js"
24
34
  end
25
35
 
26
36
  register_instance_option :partial do
27
37
  :form_wysihtml5
28
38
  end
29
-
30
- [:config_options, :css_location, :js_location].each do |key|
31
- register_deprecated_instance_option :"bootstrap_wysihtml5_#{key}", key
32
- end
33
39
  end
34
40
  end
35
41
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_support/core_ext/string/inflections'
2
4
  require 'rails_admin/config/fields'
3
5
  require 'rails_admin/config/fields/association'
@@ -9,7 +11,7 @@ module RailsAdmin
9
11
  @@registry = {}
10
12
 
11
13
  def self.load(type)
12
- @@registry[type.to_sym] || raise("Unsupported field datatype: #{type}")
14
+ @@registry.fetch(type.to_sym) { raise "Unsupported field datatype: #{type}" }
13
15
  end
14
16
 
15
17
  def self.register(type, klass = nil)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  module Fields
@@ -20,7 +22,7 @@ module RailsAdmin
20
22
 
21
23
  # Registry of field factories.
22
24
  #
23
- # Field factory is an anonymous function that recieves the parent object,
25
+ # Field factory is an anonymous function that receives the parent object,
24
26
  # an array of field properties and an array of fields already instantiated.
25
27
  #
26
28
  # If the factory returns true then that property will not be run through
@@ -50,13 +52,15 @@ module RailsAdmin
50
52
  parent.abstract_model.properties.each do |properties|
51
53
  # Unless a previous factory has already loaded current field as well
52
54
  next if fields.detect { |f| f.name == properties.name }
55
+
53
56
  # Loop through factories until one returns true
54
57
  @@registry.detect { |factory| factory.call(parent, properties, fields) }
55
58
  end
56
59
  # Load fields for all associations (relations)
57
- parent.abstract_model.associations.select { |a| a.type != :belongs_to }.each do |association| # :belongs_to are created by factory for belongs_to fields
60
+ parent.abstract_model.associations.reject { |a| a.type == :belongs_to }.each do |association| # :belongs_to are created by factory for belongs_to fields
58
61
  # Unless a previous factory has already loaded current field as well
59
62
  next if fields.detect { |f| f.name == association.name }
63
+
60
64
  # Loop through factories until one returns true
61
65
  @@registry.detect { |factory| factory.call(parent, association, fields) }
62
66
  end
@@ -82,6 +86,7 @@ require 'rails_admin/config/fields/factories/devise'
82
86
  require 'rails_admin/config/fields/factories/paperclip'
83
87
  require 'rails_admin/config/fields/factories/dragonfly'
84
88
  require 'rails_admin/config/fields/factories/carrierwave'
85
- require 'rails_admin/config/fields/factories/refile'
86
89
  require 'rails_admin/config/fields/factories/active_storage'
90
+ require 'rails_admin/config/fields/factories/shrine'
91
+ require 'rails_admin/config/fields/factories/action_text'
87
92
  require 'rails_admin/config/fields/factories/association'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/group'
2
4
 
3
5
  module RailsAdmin
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  # Provides accessor and autoregistering of model's description.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  # Provides accessors and autoregistering of model's fields.
@@ -8,9 +10,7 @@ module RailsAdmin
8
10
 
9
11
  # some fields are hidden by default (belongs_to keys, has_many associations in list views.)
10
12
  # unhide them if config specifically defines them
11
- if field
12
- field.show unless field.instance_variable_get("@#{field.name}_registered").is_a?(Proc)
13
- end
13
+ field.show if field && !field.instance_variable_get("@#{field.name}_registered").is_a?(Proc)
14
14
  # Specify field as virtual if type is not specifically set and field was not
15
15
  # found in default stack
16
16
  if field.nil? && type.nil?
@@ -39,17 +39,18 @@ module RailsAdmin
39
39
  field
40
40
  end
41
41
 
42
- # configure a field without adding it.
42
+ # configure field(s) from the default group in a section without changing the original order.
43
43
  def configure(name, type = nil, &block)
44
- field(name, type, false, &block)
44
+ [*name].each { |field_name| field(field_name, type, false, &block) }
45
45
  end
46
46
 
47
- # include fields by name and apply an optionnal block to each (through a call to fields),
47
+ # include fields by name and apply an optional block to each (through a call to fields),
48
48
  # or include fields by conditions if no field names
49
49
  def include_fields(*field_names, &block)
50
50
  if field_names.empty?
51
51
  _fields.select { |f| f.instance_eval(&block) }.each do |f|
52
52
  next if f.defined
53
+
53
54
  f.defined = true
54
55
  f.order = _fields.count(&:defined)
55
56
  end
@@ -117,6 +118,10 @@ module RailsAdmin
117
118
  all_fields.collect { |f| f.with(bindings) }.select(&:visible?).sort_by { |f| [f.order, i += 1] } # stable sort, damn
118
119
  end
119
120
 
121
+ def possible_fields
122
+ _fields(true)
123
+ end
124
+
120
125
  protected
121
126
 
122
127
  # Raw fields.
@@ -126,7 +131,7 @@ module RailsAdmin
126
131
  return @_fields if @_fields
127
132
  return @_ro_fields if readonly && @_ro_fields
128
133
 
129
- if self.class == RailsAdmin::Config::Sections::Base
134
+ if instance_of?(RailsAdmin::Config::Sections::Base)
130
135
  @_ro_fields = @_fields = RailsAdmin::Config::Fields.factory(self)
131
136
  else
132
137
  # parent is RailsAdmin::Config::Model, recursion is on Section's classes
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/config/fields/group'
2
4
 
3
5
  module RailsAdmin
@@ -16,7 +18,7 @@ module RailsAdmin
16
18
 
17
19
  # Reader for groups that are marked as visible
18
20
  def visible_groups
19
- parent.groups.collect { |f| f.section = self; f.with(bindings) }.select(&:visible?).select do |g| # rubocop:disable Semicolon
21
+ parent.groups.collect { |f| f.section = self; f.with(bindings) }.select(&:visible?).select do |g| # rubocop:disable Style/Semicolon
20
22
  g.visible_fields.present?
21
23
  end
22
24
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  # Defines a visibility configuration
@@ -16,7 +18,7 @@ module RailsAdmin
16
18
 
17
19
  # Writer to hide object.
18
20
  def hide(&block)
19
- visible block ? proc { false == instance_eval(&block) } : false
21
+ visible block ? proc { instance_eval(&block) == false } : false
20
22
  end
21
23
 
22
24
  # Writer to show field.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Config
3
5
  module Inspectable
@@ -30,9 +32,7 @@ module RailsAdmin
30
32
  end
31
33
 
32
34
  def set_named_instance_variables
33
- unless defined?(self.class::NAMED_INSTANCE_VARIABLES)
34
- self.class.const_set('NAMED_INSTANCE_VARIABLES', [])
35
- end
35
+ self.class.const_set('NAMED_INSTANCE_VARIABLES', []) unless defined?(self.class::NAMED_INSTANCE_VARIABLES)
36
36
  end
37
37
  end
38
38
  end