activeadmin 3.1.0 → 4.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (340) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2 -1
  3. data/CONTRIBUTING.md +25 -108
  4. data/README.md +17 -30
  5. data/app/assets/config/active_admin_manifest.js +2 -0
  6. data/app/controllers/active_admin/base_controller/menu.rb +39 -0
  7. data/{lib → app/controllers}/active_admin/base_controller.rb +46 -18
  8. data/{lib → app/controllers}/active_admin/page_controller.rb +0 -4
  9. data/{lib → app/controllers}/active_admin/resource_controller/action_builder.rb +1 -1
  10. data/{lib → app/controllers}/active_admin/resource_controller/data_access.rb +2 -2
  11. data/{lib → app/controllers}/active_admin/resource_controller/scoping.rb +1 -1
  12. data/{lib → app/controllers}/active_admin/resource_controller/streaming.rb +2 -2
  13. data/app/controllers/active_admin/resource_controller.rb +102 -0
  14. data/app/helpers/active_admin/auto_link_helper.rb +66 -0
  15. data/app/helpers/active_admin/breadcrumb_helper.rb +41 -0
  16. data/app/helpers/active_admin/display_helper.rb +117 -0
  17. data/app/helpers/active_admin/form_helper.rb +95 -0
  18. data/app/helpers/active_admin/index_helper.rb +40 -0
  19. data/app/helpers/active_admin/layout_helper.rb +63 -0
  20. data/app/javascript/active_admin/features/batch_actions.js +89 -0
  21. data/app/javascript/active_admin/features/dark_mode_toggle.js +37 -0
  22. data/app/javascript/active_admin/features/filters.js +34 -0
  23. data/app/javascript/active_admin/features/has_many.js +28 -0
  24. data/app/javascript/active_admin/features/main_menu.js +12 -0
  25. data/app/javascript/active_admin/features/per_page.js +9 -0
  26. data/app/javascript/active_admin/utils/dom.js +17 -0
  27. data/app/javascript/active_admin.js +10 -0
  28. data/app/views/active_admin/_flash_messages.html.erb +22 -0
  29. data/app/views/active_admin/_html_head.html.erb +13 -0
  30. data/app/views/active_admin/_main_navigation.html.erb +28 -0
  31. data/app/views/active_admin/_page_header.html.erb +27 -0
  32. data/app/views/active_admin/_sidebar.html.erb +5 -0
  33. data/app/views/active_admin/_site_footer.html.erb +7 -0
  34. data/app/views/active_admin/_site_header.html.erb +30 -0
  35. data/app/views/active_admin/devise/confirmations/new.html.erb +5 -3
  36. data/app/views/active_admin/devise/passwords/edit.html.erb +5 -3
  37. data/app/views/active_admin/devise/passwords/new.html.erb +5 -4
  38. data/app/views/active_admin/devise/registrations/new.html.erb +6 -4
  39. data/app/views/active_admin/devise/sessions/new.html.erb +6 -4
  40. data/app/views/active_admin/devise/shared/_links.erb +3 -1
  41. data/app/views/active_admin/devise/unlocks/new.html.erb +6 -4
  42. data/app/views/{kaminari/active_admin_countless → active_admin/kaminari}/_gap.html.erb +3 -1
  43. data/app/views/active_admin/kaminari/_next_page.html.erb +16 -0
  44. data/app/views/active_admin/kaminari/_page.html.erb +14 -0
  45. data/app/views/{kaminari/active_admin_countless → active_admin/kaminari}/_paginator.html.erb +1 -2
  46. data/app/views/active_admin/kaminari/_prev_page.html.erb +16 -0
  47. data/app/views/active_admin/page/index.html.arb +5 -1
  48. data/app/views/active_admin/resource/_active_filters.html.erb +32 -0
  49. data/app/views/active_admin/resource/_batch_actions_dropdown.html.erb +19 -0
  50. data/app/views/active_admin/resource/_form.html.arb +16 -0
  51. data/app/views/active_admin/resource/_form_default.html.arb +12 -0
  52. data/app/views/active_admin/resource/_index_as_table_default.html.arb +9 -0
  53. data/app/views/active_admin/resource/_index_blank_slate.html.erb +14 -0
  54. data/app/views/active_admin/resource/_index_empty_results.html.erb +5 -0
  55. data/app/views/active_admin/resource/_index_table_actions_default.html.erb +9 -0
  56. data/app/views/active_admin/resource/_show_default.html.arb +3 -0
  57. data/app/views/active_admin/resource/edit.html.arb +1 -1
  58. data/app/views/active_admin/resource/index.html.arb +94 -1
  59. data/app/views/active_admin/resource/new.html.arb +1 -1
  60. data/app/views/active_admin/resource/show.html.arb +12 -1
  61. data/app/views/active_admin/shared/_action_items.html.erb +3 -0
  62. data/app/views/active_admin/shared/_download_format_links.html.erb +7 -0
  63. data/app/views/active_admin/shared/_resource_comments.html.erb +51 -0
  64. data/app/views/active_admin/shared/_sidebar_section.html.arb +7 -0
  65. data/app/views/active_admin/shared/_sidebar_sections.html.erb +5 -0
  66. data/app/views/layouts/active_admin.html.erb +20 -0
  67. data/app/views/layouts/active_admin_logged_out.html.erb +8 -45
  68. data/config/locales/ar.yml +0 -16
  69. data/config/locales/az.yml +0 -16
  70. data/config/locales/bg.yml +0 -9
  71. data/config/locales/bs.yml +0 -7
  72. data/config/locales/ca.yml +0 -9
  73. data/config/locales/cs.yml +0 -9
  74. data/config/locales/da.yml +0 -16
  75. data/config/locales/de-CH.yml +0 -10
  76. data/config/locales/de.yml +0 -16
  77. data/config/locales/el.yml +0 -13
  78. data/config/locales/en-CA.yml +0 -16
  79. data/config/locales/en-GB.yml +0 -16
  80. data/config/locales/en.yml +18 -28
  81. data/config/locales/eo.yml +0 -17
  82. data/config/locales/es-MX.yml +0 -9
  83. data/config/locales/es.yml +0 -16
  84. data/config/locales/fa.yml +0 -9
  85. data/config/locales/fi.yml +0 -9
  86. data/config/locales/fr.yml +32 -26
  87. data/config/locales/he.yml +0 -16
  88. data/config/locales/hr.yml +0 -9
  89. data/config/locales/hu.yml +0 -6
  90. data/config/locales/id.yml +0 -16
  91. data/config/locales/it.yml +0 -16
  92. data/config/locales/ja.yml +0 -16
  93. data/config/locales/ko.yml +0 -9
  94. data/config/locales/lt.yml +0 -16
  95. data/config/locales/lv.yml +0 -6
  96. data/config/locales/mk.yml +0 -15
  97. data/config/locales/nb.yml +0 -12
  98. data/config/locales/nl.yml +21 -29
  99. data/config/locales/pl.yml +0 -16
  100. data/config/locales/pt-BR.yml +0 -16
  101. data/config/locales/pt-PT.yml +0 -6
  102. data/config/locales/ro.yml +0 -6
  103. data/config/locales/ru.yml +0 -16
  104. data/config/locales/sk.yml +0 -16
  105. data/config/locales/sv-SE.yml +0 -16
  106. data/config/locales/tr.yml +0 -16
  107. data/config/locales/uk.yml +0 -16
  108. data/config/locales/vi.yml +0 -16
  109. data/config/locales/zh-CN.yml +0 -16
  110. data/config/locales/zh-TW.yml +0 -16
  111. data/lib/active_admin/application.rb +1 -9
  112. data/lib/active_admin/batch_actions/controller.rb +1 -4
  113. data/lib/active_admin/batch_actions/resource_extension.rb +6 -13
  114. data/lib/active_admin/batch_actions/views/batch_action_form.rb +0 -6
  115. data/lib/active_admin/batch_actions/views/selection_cells.rb +2 -2
  116. data/lib/active_admin/batch_actions.rb +0 -5
  117. data/lib/active_admin/callbacks.rb +6 -4
  118. data/lib/active_admin/component.rb +0 -1
  119. data/lib/active_admin/csv_builder.rb +23 -2
  120. data/lib/active_admin/devise.rb +3 -3
  121. data/lib/active_admin/dsl.rb +2 -2
  122. data/lib/active_admin/dynamic_settings_node.rb +4 -4
  123. data/lib/active_admin/engine.rb +19 -6
  124. data/lib/active_admin/filters/active.rb +6 -4
  125. data/lib/active_admin/filters/active_filter.rb +1 -3
  126. data/lib/active_admin/filters/forms.rb +2 -43
  127. data/lib/active_admin/filters/formtastic_addons.rb +1 -1
  128. data/lib/active_admin/filters/resource_extension.rb +17 -9
  129. data/lib/active_admin/filters.rb +0 -2
  130. data/lib/active_admin/form_builder.rb +15 -14
  131. data/lib/active_admin/inputs/filters/base/search_method_select.rb +8 -10
  132. data/lib/active_admin/inputs/filters/base.rb +1 -1
  133. data/lib/active_admin/inputs/filters/check_boxes_input.rb +1 -6
  134. data/lib/active_admin/inputs/filters/date_range_input.rb +4 -2
  135. data/lib/active_admin/inputs/filters/select_input.rb +2 -0
  136. data/lib/active_admin/inputs.rb +0 -3
  137. data/lib/active_admin/menu.rb +11 -7
  138. data/lib/active_admin/menu_collection.rb +1 -1
  139. data/lib/active_admin/menu_item.rb +24 -3
  140. data/lib/active_admin/namespace.rb +2 -44
  141. data/lib/active_admin/namespace_settings.rb +2 -35
  142. data/lib/active_admin/order_clause.rb +4 -1
  143. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +3 -75
  144. data/lib/active_admin/orm/active_record/comments.rb +10 -5
  145. data/lib/active_admin/resource/action_items.rb +15 -20
  146. data/lib/active_admin/resource/naming.rb +1 -2
  147. data/lib/active_admin/resource.rb +1 -0
  148. data/lib/active_admin/resource_dsl.rb +1 -1
  149. data/lib/active_admin/scope.rb +1 -1
  150. data/lib/active_admin/settings_node.rb +1 -1
  151. data/lib/active_admin/sidebar_section.rb +0 -5
  152. data/lib/active_admin/version.rb +1 -1
  153. data/lib/active_admin/view_helpers.rb +0 -12
  154. data/lib/active_admin/views/components/active_admin_form.rb +20 -16
  155. data/lib/active_admin/views/components/attributes_table.rb +4 -12
  156. data/lib/active_admin/views/components/index_list.rb +10 -23
  157. data/lib/active_admin/views/components/paginated_collection.rb +34 -39
  158. data/lib/active_admin/views/components/panel.rb +2 -10
  159. data/lib/active_admin/views/components/scopes.rb +12 -21
  160. data/lib/active_admin/views/components/status_tag.rb +22 -19
  161. data/lib/active_admin/views/components/table_for.rb +19 -24
  162. data/lib/active_admin/views/components/tabs.rb +10 -11
  163. data/lib/active_admin/views/index_as_table.rb +24 -97
  164. data/lib/active_admin.rb +7 -11
  165. data/lib/generators/active_admin/assets/assets_generator.rb +4 -4
  166. data/lib/generators/active_admin/assets/templates/active_admin.css +3 -0
  167. data/lib/generators/active_admin/assets/templates/tailwind.config.js +18 -0
  168. data/lib/generators/active_admin/install/install_generator.rb +2 -8
  169. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +10 -87
  170. data/lib/generators/active_admin/install/templates/dashboard.rb +8 -25
  171. data/lib/generators/active_admin/page/page_generator.rb +0 -1
  172. data/lib/generators/active_admin/resource/resource_generator.rb +46 -7
  173. data/lib/generators/active_admin/resource/templates/resource.rb.erb +42 -0
  174. data/lib/generators/active_admin/views_generator.rb +18 -0
  175. metadata +66 -200
  176. data/app/assets/javascripts/active_admin/base.js +0 -521
  177. data/app/assets/stylesheets/active_admin/_base.scss +0 -57
  178. data/app/assets/stylesheets/active_admin/_forms.scss +0 -316
  179. data/app/assets/stylesheets/active_admin/_header.scss +0 -188
  180. data/app/assets/stylesheets/active_admin/_mixins.scss +0 -1
  181. data/app/assets/stylesheets/active_admin/_normalize.scss +0 -349
  182. data/app/assets/stylesheets/active_admin/_print.scss +0 -287
  183. data/app/assets/stylesheets/active_admin/_typography.scss +0 -100
  184. data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +0 -6
  185. data/app/assets/stylesheets/active_admin/components/_blank_slates.scss +0 -30
  186. data/app/assets/stylesheets/active_admin/components/_breadcrumbs.scss +0 -20
  187. data/app/assets/stylesheets/active_admin/components/_buttons.scss +0 -6
  188. data/app/assets/stylesheets/active_admin/components/_columns.scss +0 -3
  189. data/app/assets/stylesheets/active_admin/components/_comments.scss +0 -41
  190. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +0 -148
  191. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +0 -151
  192. data/app/assets/stylesheets/active_admin/components/_flash_messages.scss +0 -37
  193. data/app/assets/stylesheets/active_admin/components/_grid.scss +0 -9
  194. data/app/assets/stylesheets/active_admin/components/_index_list.scss +0 -12
  195. data/app/assets/stylesheets/active_admin/components/_links.scss +0 -5
  196. data/app/assets/stylesheets/active_admin/components/_modal_dialog.scss +0 -34
  197. data/app/assets/stylesheets/active_admin/components/_pagination.scss +0 -55
  198. data/app/assets/stylesheets/active_admin/components/_panels.scss +0 -6
  199. data/app/assets/stylesheets/active_admin/components/_scopes.scss +0 -13
  200. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -12
  201. data/app/assets/stylesheets/active_admin/components/_table_tools.scss +0 -67
  202. data/app/assets/stylesheets/active_admin/components/_tables.scss +0 -112
  203. data/app/assets/stylesheets/active_admin/components/_tabs.scss +0 -65
  204. data/app/assets/stylesheets/active_admin/components/_unsupported_browser.scss +0 -16
  205. data/app/assets/stylesheets/active_admin/mixins/_all.scss +0 -8
  206. data/app/assets/stylesheets/active_admin/mixins/_buttons.scss +0 -65
  207. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +0 -28
  208. data/app/assets/stylesheets/active_admin/mixins/_rounded.scss +0 -22
  209. data/app/assets/stylesheets/active_admin/mixins/_sections.scss +0 -41
  210. data/app/assets/stylesheets/active_admin/mixins/_shadows.scss +0 -15
  211. data/app/assets/stylesheets/active_admin/mixins/_typography.scss +0 -3
  212. data/app/assets/stylesheets/active_admin/mixins/_utilities.scss +0 -17
  213. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +0 -51
  214. data/app/assets/stylesheets/active_admin/pages/_logged_out.scss +0 -44
  215. data/app/assets/stylesheets/active_admin/structure/_footer.scss +0 -19
  216. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +0 -29
  217. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -40
  218. data/app/javascript/active_admin/base.js +0 -28
  219. data/app/javascript/active_admin/ext/jquery-ui.js +0 -7
  220. data/app/javascript/active_admin/ext/jquery.js +0 -9
  221. data/app/javascript/active_admin/initializers/batch-actions.js +0 -61
  222. data/app/javascript/active_admin/initializers/checkbox-toggler.js +0 -3
  223. data/app/javascript/active_admin/initializers/datepicker.js +0 -16
  224. data/app/javascript/active_admin/initializers/dropdown-menu.js +0 -9
  225. data/app/javascript/active_admin/initializers/filters.js +0 -10
  226. data/app/javascript/active_admin/initializers/has-many.js +0 -98
  227. data/app/javascript/active_admin/initializers/per-page.js +0 -13
  228. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +0 -3
  229. data/app/javascript/active_admin/initializers/tabs.js +0 -6
  230. data/app/javascript/active_admin/lib/checkbox-toggler.js +0 -49
  231. data/app/javascript/active_admin/lib/dropdown-menu.js +0 -116
  232. data/app/javascript/active_admin/lib/filters.js +0 -39
  233. data/app/javascript/active_admin/lib/modal-dialog.js +0 -63
  234. data/app/javascript/active_admin/lib/per-page.js +0 -38
  235. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +0 -38
  236. data/app/javascript/active_admin/lib/utils.js +0 -40
  237. data/app/views/kaminari/active_admin/_first_page.html.erb +0 -11
  238. data/app/views/kaminari/active_admin/_gap.html.erb +0 -8
  239. data/app/views/kaminari/active_admin/_last_page.html.erb +0 -11
  240. data/app/views/kaminari/active_admin/_next_page.html.erb +0 -11
  241. data/app/views/kaminari/active_admin/_page.html.erb +0 -12
  242. data/app/views/kaminari/active_admin/_paginator.html.erb +0 -25
  243. data/app/views/kaminari/active_admin/_prev_page.html.erb +0 -11
  244. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +0 -11
  245. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +0 -11
  246. data/app/views/kaminari/active_admin_countless/_page.html.erb +0 -12
  247. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +0 -11
  248. data/app/views/layouts/active_admin.html.arb +0 -2
  249. data/lib/active_admin/abstract_view_factory.rb +0 -48
  250. data/lib/active_admin/asset_registration.rb +0 -30
  251. data/lib/active_admin/base_controller/menu.rb +0 -35
  252. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +0 -59
  253. data/lib/active_admin/filters/active_sidebar.rb +0 -28
  254. data/lib/active_admin/generators/boilerplate.rb +0 -54
  255. data/lib/active_admin/helpers/collection.rb +0 -21
  256. data/lib/active_admin/helpers/i18n.rb +0 -8
  257. data/lib/active_admin/inputs/datepicker_input.rb +0 -28
  258. data/lib/active_admin/inputs/filters/date_picker_input.rb +0 -14
  259. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +0 -24
  260. data/lib/active_admin/orm/mongoid.rb +0 -2
  261. data/lib/active_admin/resource_controller/sidebars.rb +0 -19
  262. data/lib/active_admin/resource_controller.rb +0 -68
  263. data/lib/active_admin/view_factory.rb +0 -28
  264. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +0 -13
  265. data/lib/active_admin/view_helpers/auto_link_helper.rb +0 -46
  266. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +0 -34
  267. data/lib/active_admin/view_helpers/display_helper.rb +0 -119
  268. data/lib/active_admin/view_helpers/download_format_links_helper.rb +0 -60
  269. data/lib/active_admin/view_helpers/fields_for.rb +0 -51
  270. data/lib/active_admin/view_helpers/flash_helper.rb +0 -15
  271. data/lib/active_admin/view_helpers/form_helper.rb +0 -21
  272. data/lib/active_admin/view_helpers/scope_name_helper.rb +0 -17
  273. data/lib/active_admin/view_helpers/sidebar_helper.rb +0 -16
  274. data/lib/active_admin/view_helpers/title_helper.rb +0 -12
  275. data/lib/active_admin/view_helpers/view_factory_helper.rb +0 -12
  276. data/lib/active_admin/views/action_items.rb +0 -18
  277. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +0 -59
  278. data/lib/active_admin/views/components/blank_slate.rb +0 -18
  279. data/lib/active_admin/views/components/columns.rb +0 -162
  280. data/lib/active_admin/views/components/dropdown_menu.rb +0 -69
  281. data/lib/active_admin/views/components/menu.rb +0 -33
  282. data/lib/active_admin/views/components/menu_item.rb +0 -59
  283. data/lib/active_admin/views/components/sidebar.rb +0 -14
  284. data/lib/active_admin/views/components/sidebar_section.rb +0 -35
  285. data/lib/active_admin/views/components/site_title.rb +0 -55
  286. data/lib/active_admin/views/components/unsupported_browser.rb +0 -12
  287. data/lib/active_admin/views/footer.rb +0 -32
  288. data/lib/active_admin/views/header.rb +0 -20
  289. data/lib/active_admin/views/index_as_block.rb +0 -37
  290. data/lib/active_admin/views/index_as_blog.rb +0 -156
  291. data/lib/active_admin/views/index_as_grid.rb +0 -81
  292. data/lib/active_admin/views/pages/base.rb +0 -134
  293. data/lib/active_admin/views/pages/form.rb +0 -65
  294. data/lib/active_admin/views/pages/index.rb +0 -166
  295. data/lib/active_admin/views/pages/layout.rb +0 -27
  296. data/lib/active_admin/views/pages/page.rb +0 -31
  297. data/lib/active_admin/views/pages/show.rb +0 -60
  298. data/lib/active_admin/views/tabbed_navigation.rb +0 -12
  299. data/lib/active_admin/views/title_bar.rb +0 -56
  300. data/lib/generators/active_admin/assets/templates/active_admin.js +0 -1
  301. data/lib/generators/active_admin/assets/templates/active_admin.scss +0 -17
  302. data/lib/generators/active_admin/resource/templates/admin.rb.erb +0 -46
  303. data/lib/generators/active_admin/webpacker/plugins/jquery.js +0 -7
  304. data/lib/generators/active_admin/webpacker/templates/active_admin.js +0 -5
  305. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +0 -17
  306. data/lib/generators/active_admin/webpacker/templates/print.scss +0 -2
  307. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +0 -27
  308. data/vendor/assets/javascripts/jquery-ui/data.js +0 -41
  309. data/vendor/assets/javascripts/jquery-ui/disable-selection.js +0 -48
  310. data/vendor/assets/javascripts/jquery-ui/escape-selector.js +0 -23
  311. data/vendor/assets/javascripts/jquery-ui/focusable.js +0 -86
  312. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +0 -80
  313. data/vendor/assets/javascripts/jquery-ui/form.js +0 -22
  314. data/vendor/assets/javascripts/jquery-ui/ie.js +0 -17
  315. data/vendor/assets/javascripts/jquery-ui/keycode.js +0 -47
  316. data/vendor/assets/javascripts/jquery-ui/labels.js +0 -65
  317. data/vendor/assets/javascripts/jquery-ui/plugin.js +0 -46
  318. data/vendor/assets/javascripts/jquery-ui/position.js +0 -500
  319. data/vendor/assets/javascripts/jquery-ui/safe-active-element.js +0 -42
  320. data/vendor/assets/javascripts/jquery-ui/safe-blur.js +0 -23
  321. data/vendor/assets/javascripts/jquery-ui/scroll-parent.js +0 -47
  322. data/vendor/assets/javascripts/jquery-ui/tabbable.js +0 -38
  323. data/vendor/assets/javascripts/jquery-ui/unique-id.js +0 -51
  324. data/vendor/assets/javascripts/jquery-ui/version.js +0 -17
  325. data/vendor/assets/javascripts/jquery-ui/widget.js +0 -735
  326. data/vendor/assets/javascripts/jquery-ui/widgets/button.js +0 -391
  327. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +0 -291
  328. data/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +0 -300
  329. data/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +0 -2123
  330. data/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +0 -954
  331. data/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +0 -1259
  332. data/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +0 -230
  333. data/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +0 -1207
  334. data/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +0 -1561
  335. data/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +0 -931
  336. /data/{lib → app/controllers}/active_admin/base_controller/authorization.rb +0 -0
  337. /data/{lib → app/controllers}/active_admin/resource_controller/decorators.rb +0 -0
  338. /data/{lib → app/controllers}/active_admin/resource_controller/polymorphic_routes.rb +0 -0
  339. /data/{lib → app/controllers}/active_admin/resource_controller/resource_class_methods.rb +0 -0
  340. /data/lib/{active_admin/orm/mongoid/.gitkeep → generators/active_admin/assets/templates/builds/.keep} +0 -0
@@ -1,119 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module DisplayHelper
5
-
6
- DISPLAY_NAME_FALLBACK = -> {
7
- klass = self.class
8
- name = if klass.respond_to?(:model_name)
9
- if klass.respond_to?(:primary_key)
10
- "#{klass.model_name.human} ##{send(klass.primary_key)}"
11
- else
12
- klass.model_name.human
13
- end
14
- elsif klass.respond_to?(:primary_key)
15
- " ##{send(klass.primary_key)}"
16
- end
17
- name.present? ? name : to_s
18
- }
19
-
20
- def DISPLAY_NAME_FALLBACK.inspect
21
- "DISPLAY_NAME_FALLBACK"
22
- end
23
-
24
- # Attempts to call any known display name methods on the resource.
25
- # See the setting in `application.rb` for the list of methods and their priority.
26
- def display_name(resource)
27
- unless resource.nil?
28
- result = render_in_context(resource, display_name_method_for(resource))
29
- if result.to_s&.strip&.present?
30
- ERB::Util.html_escape(result)
31
- else
32
- ERB::Util.html_escape(render_in_context(resource, DISPLAY_NAME_FALLBACK))
33
- end
34
- end
35
- end
36
-
37
- # Looks up and caches the first available display name method.
38
- # To prevent conflicts, we exclude any methods that happen to be associations.
39
- # If no methods are available and we're about to use the Kernel's `to_s`, provide our own.
40
- def display_name_method_for(resource)
41
- @@display_name_methods_cache ||= {}
42
- @@display_name_methods_cache[resource.class] ||= begin
43
- methods = active_admin_application.display_name_methods - association_methods_for(resource)
44
- method = methods.detect { |method| resource.respond_to? method }
45
-
46
- if method != :to_s || resource.method(method).source_location
47
- method
48
- else
49
- DISPLAY_NAME_FALLBACK
50
- end
51
- end
52
- end
53
-
54
- def association_methods_for(resource)
55
- return [] unless resource.class.respond_to? :reflect_on_all_associations
56
- resource.class.reflect_on_all_associations.map(&:name)
57
- end
58
-
59
- def format_attribute(resource, attr)
60
- value = find_value resource, attr
61
-
62
- if value.is_a?(Arbre::Element)
63
- value
64
- elsif boolean_attr?(resource, attr, value)
65
- Arbre::Context.new { status_tag value }
66
- else
67
- pretty_format value
68
- end
69
- end
70
-
71
- def find_value(resource, attr)
72
- if attr.is_a? Proc
73
- attr.call resource
74
- elsif resource.respond_to? attr
75
- resource.public_send attr
76
- elsif resource.respond_to? :[]
77
- resource[attr]
78
- end
79
- end
80
-
81
- # Attempts to create a human-readable string for any object
82
- def pretty_format(object)
83
- case object
84
- when String, Numeric, Symbol, Arbre::Element
85
- object.to_s
86
- when Date, Time
87
- I18n.localize object, format: active_admin_application.localize_format
88
- when Array
89
- format_collection(object)
90
- else
91
- if defined?(::ActiveRecord) && object.is_a?(ActiveRecord::Base) ||
92
- defined?(::Mongoid) && object.class.include?(Mongoid::Document)
93
- auto_link object
94
- elsif defined?(::ActiveRecord) && object.is_a?(ActiveRecord::Relation)
95
- format_collection(object)
96
- else
97
- display_name object
98
- end
99
- end
100
- end
101
-
102
- def format_collection(collection)
103
- safe_join(collection.map { |item| pretty_format(item) }, ", ")
104
- end
105
-
106
- def boolean_attr?(resource, attr, value)
107
- case value
108
- when TrueClass, FalseClass
109
- true
110
- else
111
- if resource.class.respond_to? :columns_hash
112
- column = resource.class.columns_hash[attr.to_s] and column.type == :boolean
113
- end
114
- end
115
- end
116
-
117
- end
118
- end
119
- end
@@ -1,60 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module DownloadFormatLinksHelper
5
- private
6
-
7
- def build_download_formats(download_links)
8
- download_links = instance_exec(&download_links) if download_links.is_a?(Proc)
9
-
10
- if download_links.is_a?(Array) && !download_links.empty?
11
- download_links
12
- elsif download_links == false
13
- []
14
- else
15
- self.class.formats
16
- end
17
- end
18
-
19
- def build_download_format_links(formats = self.class.formats)
20
- params = request.query_parameters.except :format, :commit
21
- div class: "download_links" do
22
- span I18n.t("active_admin.download")
23
- formats.each do |format|
24
- a format.upcase, href: url_for(params: params, format: format)
25
- end
26
- end
27
- end
28
-
29
- def self.included base
30
- base.extend ClassMethods
31
- end
32
-
33
- module ClassMethods
34
-
35
- # A ready only of formats to make available in index/paginated
36
- # collection view.
37
- # @return [Array]
38
- # @see add_format for information on adding custom download link
39
- # formats
40
- def formats
41
- @formats ||= [:csv, :xml, :json]
42
- @formats.clone
43
- end
44
-
45
- # Adds a mime type to the list of available formats available for data
46
- # export. You must register the extension prior to adding it here.
47
- # @param [Symbol] format the mime type to add
48
- # @return [Array] A copy of the updated formats array.
49
- def add_format(format)
50
- unless Mime::Type.lookup_by_extension format
51
- raise ArgumentError, "Please register the #{format} mime type with `Mime::Type.register`"
52
- end
53
- @formats << format unless formats.include? format
54
- formats
55
- end
56
- end
57
-
58
- end
59
- end
60
- end
@@ -1,51 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module FormHelper
5
-
6
- # Flatten a params Hash to an array of fields.
7
- #
8
- # @param params [Hash]
9
- # @param options [Hash] :namespace and :except
10
- #
11
- # @return [Array] of [Hash] with one element.
12
- #
13
- # @example
14
- # fields_for_params(scope: "all", users: ["greg"])
15
- # => [ {"scope" => "all"} , {"users[]" => "greg"} ]
16
- #
17
- def fields_for_params(params, options = {})
18
- namespace = options[:namespace]
19
- except = Array.wrap(options[:except]).map &:to_s
20
-
21
- params.flat_map do |k, v|
22
- next if namespace.nil? && %w(controller action commit utf8).include?(k.to_s)
23
- next if except.include?(k.to_s)
24
-
25
- if namespace
26
- k = "#{namespace}[#{k}]"
27
- end
28
-
29
- case v
30
- when String
31
- { k => v }
32
- when Symbol
33
- { k => v.to_s }
34
- when Hash
35
- fields_for_params(v, namespace: k)
36
- when Array
37
- v.map do |v|
38
- { "#{k}[]" => v }
39
- end
40
- when nil
41
- { k => "" }
42
- when TrueClass, FalseClass
43
- { k => v }
44
- else
45
- raise "I don't know what to do with #{v.class} params: #{v.inspect}"
46
- end
47
- end.compact
48
- end
49
- end
50
- end
51
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module FlashHelper
5
-
6
- # Returns all the flash keys to display in any Active Admin view.
7
- # This method removes the :timedout key that Devise uses by default.
8
- # Note Rails >= 4.1 normalizes keys to strings automatically.
9
- def flash_messages
10
- @flash_messages ||= flash.to_hash.with_indifferent_access.except(*active_admin_application.flash_keys_to_except)
11
- end
12
-
13
- end
14
- end
15
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module FormHelper
5
-
6
- def active_admin_form_for(resource, options = {}, &block)
7
- Arbre::Context.new({}, self) do
8
- active_admin_form_for resource, options, &block
9
- end.content
10
- end
11
-
12
- def hidden_field_tags_for(params, options = {})
13
- fields_for_params(params.to_unsafe_hash, options).map do |kv|
14
- k, v = kv.first
15
- hidden_field_tag k, v, id: sanitize_to_id("hidden_active_admin_#{k}")
16
- end.join("\n").html_safe
17
- end
18
-
19
- end
20
- end
21
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module ScopeNameHelper
5
-
6
- def scope_name(scope)
7
- case scope.name
8
- when Proc then
9
- self.instance_exec(&scope.name).to_s
10
- else
11
- scope.name.to_s
12
- end
13
- end
14
-
15
- end
16
- end
17
- end
@@ -1,16 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module SidebarHelper
5
-
6
- def skip_sidebar!
7
- @skip_sidebar = true
8
- end
9
-
10
- def skip_sidebar?
11
- @skip_sidebar == true
12
- end
13
-
14
- end
15
- end
16
- end
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module TitleHelper
5
-
6
- def title(_title)
7
- @page_title = _title
8
- end
9
-
10
- end
11
- end
12
- end
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module ViewHelpers
4
- module ViewFactoryHelper
5
-
6
- def view_factory
7
- active_admin_namespace.view_factory
8
- end
9
-
10
- end
11
- end
12
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module Views
4
-
5
- class ActionItems < ActiveAdmin::Component
6
-
7
- def build(action_items)
8
- action_items.each do |action_item|
9
- span class: action_item.html_class do
10
- instance_exec(&action_item.block)
11
- end
12
- end
13
- end
14
-
15
- end
16
-
17
- end
18
- end
@@ -1,59 +0,0 @@
1
- # frozen_string_literal: true
2
- require "active_admin/filters/active"
3
-
4
- module ActiveAdmin
5
- module Views
6
-
7
- class ActiveFiltersSidebarContent < ActiveAdmin::Component
8
- builder_method :active_filters_sidebar_content
9
-
10
- def build
11
- active_filters = ActiveAdmin::Filters::Active.new(active_admin_config, assigns[:search])
12
- active_scopes = assigns[:search].instance_variable_get("@scope_args")
13
-
14
- scope_block(current_scope)
15
- filters_list(active_filters, active_scopes)
16
- end
17
-
18
- def scope_block(current_scope)
19
- return unless current_scope
20
-
21
- h4 I18n.t("active_admin.search_status.current_scope"), style: "display: inline"
22
- b scope_name(current_scope), class: "current_scope_name"
23
- end
24
-
25
- def filters_list(active_filters, active_scopes)
26
- div style: "margin-top: 10px" do
27
- h4 I18n.t("active_admin.search_status.current_filters"), style: "margin-bottom: 10px"
28
- ul do
29
- if active_filters.filters.blank? && active_scopes.blank?
30
- li I18n.t("active_admin.search_status.no_current_filters")
31
- else
32
- active_filters.filters.each { |filter| filter_item(filter) }
33
- active_scopes.each { |name, value| scope_item(name, value) }
34
- end
35
- end
36
- end
37
- end
38
-
39
- def filter_item(filter)
40
- li filter.html_options do
41
- span filter.label
42
- b to_sentence(filter.values.map { |v| pretty_format(v) })
43
- end
44
- end
45
-
46
- def scope_item(name, value)
47
- filter_name = name.gsub(/_eq$/, "")
48
- filter = active_admin_config.filters[filter_name.to_sym]
49
- label = filter.try(:[], :label) || filter_name.titleize
50
-
51
- li class: "current_filter_#{name}" do
52
- span "#{label} #{Ransack::Translate.predicate('eq')}"
53
- b value
54
- end
55
- end
56
- end
57
-
58
- end
59
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module Views
4
- # Build a Blank Slate
5
- class BlankSlate < ActiveAdmin::Component
6
- builder_method :blank_slate
7
-
8
- def default_class_name
9
- "blank_slate_container"
10
- end
11
-
12
- def build(content)
13
- super(span(content.html_safe, class: "blank_slate"))
14
- end
15
-
16
- end
17
- end
18
- end
@@ -1,162 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module Views
4
-
5
- # = Columns Component
6
- #
7
- # The Columns component allows you draw content into scalable columns. All
8
- # you need to do is define the number of columns and the component will
9
- # take care of the rest.
10
- #
11
- # == Simple Columns
12
- #
13
- # To display columns, use the #columns method. Within the block, call the
14
- # #column method to create a new column.
15
- #
16
- # To create a two column layout:
17
- #
18
- # columns do
19
- # column do
20
- # span "Column # 1
21
- # end
22
- # column do
23
- # span "Column # 2
24
- # end
25
- # end
26
- #
27
- #
28
- # == Multiple Span Columns
29
- #
30
- # To make a column span multiple, pass the :span option to the column method:
31
- #
32
- # columns do
33
- # column span: 2 do
34
- # span "Column # 1
35
- # end
36
- # column do
37
- # span "Column # 2
38
- # end
39
- # end
40
- #
41
- # By default, each column spans 1 column. So the above layout would have 2 columns,
42
- # the first being 2 time bigger than the second.
43
- #
44
- #
45
- # == Max and Min Column Sizes
46
- #
47
- # Active Admin is a fluid width layout, which means that columns are all defined
48
- # using percentages. Sometimes this can cause issues if you don't want a column
49
- # to shrink or expand past a certain point.
50
- #
51
- # To overcome this, columns include a :max_width and :min_width option.
52
- #
53
- # columns do
54
- # column max_width: "200px", min_width: "100px" do
55
- # span "Column # 1
56
- # end
57
- # column do
58
- # span "Column # 2
59
- # end
60
- # end
61
- #
62
- # Now the first column will not grow bigger than 200px and will not shrink smaller
63
- # than 100px.
64
- class Columns < ActiveAdmin::Component
65
- builder_method :columns
66
-
67
- # For documentation, please take a look at Column#build
68
- def column(*args, &block)
69
- insert_tag Column, *args, &block
70
- end
71
-
72
- # Override add child to set widths
73
- def add_child(*)
74
- super
75
- calculate_columns!
76
- end
77
-
78
- protected
79
-
80
- # Override the closing tag to include a clear
81
- def closing_tag
82
- "<div style=\"clear:both;\"></div>" + super
83
- end
84
-
85
- def margin_size
86
- 2
87
- end
88
-
89
- # Calculate our columns sizes and margins
90
- def calculate_columns!
91
- span_count = columns_span_count
92
- columns_count = children.size
93
-
94
- all_margins_width = margin_size * (span_count - 1)
95
- column_width = (100.00 - all_margins_width) / span_count
96
-
97
- columns.each_with_index do |column, i|
98
- is_last_column = i == (columns_count - 1)
99
- column.set_column_styles(column_width, margin_size, is_last_column)
100
- end
101
- end
102
-
103
- def columns_span_count
104
- count = 0
105
- columns.each do |column|
106
- count += column.span_size
107
- end
108
-
109
- count
110
- end
111
-
112
- def columns
113
- children.select { |child| child.is_a?(Column) }
114
- end
115
- end
116
-
117
- class Column < ActiveAdmin::Component
118
-
119
- attr_accessor :span_size, :max_width, :min_width
120
-
121
- # @param [Hash] options An options hash for the column
122
- #
123
- # @option options [Integer] :span The columns this column should span
124
- def build(options = {})
125
- options = options.dup
126
- @span_size = options.delete(:span) || 1
127
- @max_width = options.delete(:max_width)
128
- @min_width = options.delete(:min_width)
129
-
130
- super(options)
131
- end
132
-
133
- def set_column_styles(column_width, margin_width, is_last_column = false)
134
- column_with_span_width = (span_size * column_width) + ((span_size - 1) * margin_width)
135
-
136
- styles = []
137
-
138
- styles << "width: #{column_with_span_width}%;"
139
-
140
- if max_width
141
- styles << "max-width: #{safe_width(max_width)};"
142
- end
143
-
144
- if min_width
145
- styles << "min-width: #{safe_width(min_width)};"
146
- end
147
-
148
- styles << "margin-right: #{margin_width}%;" unless is_last_column
149
-
150
- set_attribute :style, styles.join(" ")
151
- end
152
-
153
- private
154
-
155
- # Converts values without a '%' or 'px' suffix to a pixel value
156
- def safe_width(width)
157
- width.to_s.gsub(/\A(\d+)\z/, '\1px')
158
- end
159
-
160
- end
161
- end
162
- end
@@ -1,69 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module Views
4
-
5
- # Action List - A button with a drop down menu of links
6
- #
7
- # Creating a new action list:
8
- #
9
- # dropdown_menu "Administration" do
10
- # item "Edit Details", edit_details_path
11
- # item "Edit My Account", edit_my_account_path
12
- # end
13
- #
14
- # This will create a button with the label "Administration" and
15
- # a drop down once clicked with 2 options.
16
- #
17
- class DropdownMenu < ActiveAdmin::Component
18
- builder_method :dropdown_menu
19
-
20
- # Build a new action list
21
- #
22
- # @param [String] name The name to display in the button
23
- #
24
- # @param [Hash] options A set of options that get passed along to
25
- # to the parent dom element.
26
- def build(name, options = {})
27
- options = options.dup
28
-
29
- # Easily set options for the button or menu
30
- button_options = options.delete(:button) || {}
31
- menu_options = options.delete(:menu) || {}
32
-
33
- @button = build_button(name, button_options)
34
- @menu = build_menu(menu_options)
35
-
36
- super(options)
37
- end
38
-
39
- def item(*args, **kwargs)
40
- within @menu do
41
- li link_to(*args, **kwargs)
42
- end
43
- end
44
-
45
- private
46
-
47
- def build_button(name, button_options)
48
- button_options[:class] = "#{button_options[:class]} dropdown_menu_button"
49
- button_options[:href] = "#"
50
-
51
- a name, button_options
52
- end
53
-
54
- def build_menu(options)
55
- options[:class] = "#{options[:class]} dropdown_menu_list"
56
-
57
- menu_list = nil
58
-
59
- div class: "dropdown_menu_list_wrapper" do
60
- menu_list = ul(options)
61
- end
62
-
63
- menu_list
64
- end
65
-
66
- end
67
-
68
- end
69
- end
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
- module ActiveAdmin
3
- module Views
4
-
5
- # Renders an ActiveAdmin::Menu as a set of unordered list items.
6
- #
7
- # This component takes cares of deciding which items should be
8
- # displayed given the current context and renders them appropriately.
9
- #
10
- # The entire component is rendered within one ul element.
11
- class Menu < Component
12
- attr_reader :menu
13
- builder_method :menu
14
-
15
- # @param [ActiveAdmin::Menu] menu the Menu to render
16
- # @param [Hash] options the options as passed to the underlying ul element.
17
- #
18
- def build(menu, options = {})
19
- @menu = menu
20
- super(options)
21
-
22
- menu.items.each do |item|
23
- menu_item(item) if helpers.render_in_context self, item.should_display
24
- end
25
- children.sort!
26
- end
27
-
28
- def tag_name
29
- "ul"
30
- end
31
- end
32
- end
33
- end