ultra-quick-hub 0.0.1

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.

Potentially problematic release.


This version of ultra-quick-hub might be problematic. Click here for more details.

Files changed (345) hide show
  1. checksums.yaml +7 -0
  2. data/activeadmin-3.5.1/CHANGELOG.md +1153 -0
  3. data/activeadmin-3.5.1/CODE_OF_CONDUCT.md +74 -0
  4. data/activeadmin-3.5.1/CONTRIBUTING.md +187 -0
  5. data/activeadmin-3.5.1/LICENSE +20 -0
  6. data/activeadmin-3.5.1/README.md +117 -0
  7. data/activeadmin-3.5.1/app/assets/javascripts/active_admin/base.js +520 -0
  8. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_base.scss +57 -0
  9. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_forms.scss +315 -0
  10. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_header.scss +188 -0
  11. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_mixins.scss +1 -0
  12. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_normalize.scss +349 -0
  13. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_print.scss +287 -0
  14. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/_typography.scss +100 -0
  15. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_batch_actions.scss +6 -0
  16. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_blank_slates.scss +30 -0
  17. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_breadcrumbs.scss +20 -0
  18. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_buttons.scss +6 -0
  19. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_columns.scss +3 -0
  20. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_comments.scss +41 -0
  21. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_date_picker.scss +148 -0
  22. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +154 -0
  23. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_flash_messages.scss +37 -0
  24. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_grid.scss +9 -0
  25. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_index_list.scss +12 -0
  26. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_links.scss +5 -0
  27. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_modal_dialog.scss +34 -0
  28. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_pagination.scss +58 -0
  29. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_panels.scss +6 -0
  30. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_scopes.scss +13 -0
  31. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_status_tags.scss +12 -0
  32. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_table_tools.scss +70 -0
  33. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_tables.scss +112 -0
  34. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_tabs.scss +68 -0
  35. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/components/_unsupported_browser.scss +16 -0
  36. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -0
  37. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_buttons.scss +65 -0
  38. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_gradients.scss +28 -0
  39. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_rounded.scss +22 -0
  40. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_sections.scss +41 -0
  41. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_shadows.scss +15 -0
  42. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_typography.scss +3 -0
  43. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_utilities.scss +17 -0
  44. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/mixins/_variables.scss +51 -0
  45. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/pages/_logged_out.scss +44 -0
  46. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/structure/_footer.scss +19 -0
  47. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/structure/_main_structure.scss +29 -0
  48. data/activeadmin-3.5.1/app/assets/stylesheets/active_admin/structure/_title_bar.scss +43 -0
  49. data/activeadmin-3.5.1/app/javascript/active_admin/base.js +28 -0
  50. data/activeadmin-3.5.1/app/javascript/active_admin/ext/jquery-ui.js +7 -0
  51. data/activeadmin-3.5.1/app/javascript/active_admin/ext/jquery.js +9 -0
  52. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/batch-actions.js +61 -0
  53. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  54. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/datepicker.js +19 -0
  55. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  56. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/filters.js +10 -0
  57. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/has-many.js +98 -0
  58. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/per-page.js +13 -0
  59. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  60. data/activeadmin-3.5.1/app/javascript/active_admin/initializers/tabs.js +6 -0
  61. data/activeadmin-3.5.1/app/javascript/active_admin/lib/checkbox-toggler.js +49 -0
  62. data/activeadmin-3.5.1/app/javascript/active_admin/lib/core_ext.rb +148 -0
  63. data/activeadmin-3.5.1/app/javascript/active_admin/lib/dropdown-menu.js +116 -0
  64. data/activeadmin-3.5.1/app/javascript/active_admin/lib/filters.js +39 -0
  65. data/activeadmin-3.5.1/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  66. data/activeadmin-3.5.1/app/javascript/active_admin/lib/per-page.js +38 -0
  67. data/activeadmin-3.5.1/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  68. data/activeadmin-3.5.1/app/javascript/active_admin/lib/utils.js +40 -0
  69. data/activeadmin-3.5.1/app/views/active_admin/devise/confirmations/new.html.erb +15 -0
  70. data/activeadmin-3.5.1/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +8 -0
  71. data/activeadmin-3.5.1/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +7 -0
  72. data/activeadmin-3.5.1/app/views/active_admin/devise/passwords/edit.html.erb +18 -0
  73. data/activeadmin-3.5.1/app/views/active_admin/devise/passwords/new.html.erb +15 -0
  74. data/activeadmin-3.5.1/app/views/active_admin/devise/registrations/new.html.erb +21 -0
  75. data/activeadmin-3.5.1/app/views/active_admin/devise/sessions/new.html.erb +20 -0
  76. data/activeadmin-3.5.1/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  77. data/activeadmin-3.5.1/app/views/active_admin/devise/shared/_links.erb +33 -0
  78. data/activeadmin-3.5.1/app/views/active_admin/devise/unlocks/new.html.erb +15 -0
  79. data/activeadmin-3.5.1/app/views/active_admin/page/index.html.arb +2 -0
  80. data/activeadmin-3.5.1/app/views/active_admin/resource/edit.html.arb +2 -0
  81. data/activeadmin-3.5.1/app/views/active_admin/resource/index.html.arb +2 -0
  82. data/activeadmin-3.5.1/app/views/active_admin/resource/new.html.arb +2 -0
  83. data/activeadmin-3.5.1/app/views/active_admin/resource/show.html.arb +2 -0
  84. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_first_page.html.erb +11 -0
  85. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_gap.html.erb +8 -0
  86. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_last_page.html.erb +11 -0
  87. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_next_page.html.erb +11 -0
  88. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_page.html.erb +12 -0
  89. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_paginator.html.erb +25 -0
  90. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_prev_page.html.erb +11 -0
  91. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  92. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  93. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  94. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  95. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  96. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  97. data/activeadmin-3.5.1/app/views/layouts/active_admin.html.arb +2 -0
  98. data/activeadmin-3.5.1/app/views/layouts/active_admin_logged_out.html.erb +50 -0
  99. data/activeadmin-3.5.1/config/locales/ar.yml +128 -0
  100. data/activeadmin-3.5.1/config/locales/az.yml +131 -0
  101. data/activeadmin-3.5.1/config/locales/bg.yml +112 -0
  102. data/activeadmin-3.5.1/config/locales/bs.yml +114 -0
  103. data/activeadmin-3.5.1/config/locales/ca.yml +98 -0
  104. data/activeadmin-3.5.1/config/locales/cs.yml +102 -0
  105. data/activeadmin-3.5.1/config/locales/da.yml +130 -0
  106. data/activeadmin-3.5.1/config/locales/de-CH.yml +94 -0
  107. data/activeadmin-3.5.1/config/locales/de.yml +154 -0
  108. data/activeadmin-3.5.1/config/locales/el.yml +119 -0
  109. data/activeadmin-3.5.1/config/locales/en-CA.yml +132 -0
  110. data/activeadmin-3.5.1/config/locales/en-GB.yml +132 -0
  111. data/activeadmin-3.5.1/config/locales/en.yml +154 -0
  112. data/activeadmin-3.5.1/config/locales/eo.yml +137 -0
  113. data/activeadmin-3.5.1/config/locales/es-MX.yml +90 -0
  114. data/activeadmin-3.5.1/config/locales/es.yml +154 -0
  115. data/activeadmin-3.5.1/config/locales/fa.yml +112 -0
  116. data/activeadmin-3.5.1/config/locales/fi.yml +105 -0
  117. data/activeadmin-3.5.1/config/locales/fr.yml +133 -0
  118. data/activeadmin-3.5.1/config/locales/he.yml +132 -0
  119. data/activeadmin-3.5.1/config/locales/hr.yml +116 -0
  120. data/activeadmin-3.5.1/config/locales/hu.yml +94 -0
  121. data/activeadmin-3.5.1/config/locales/id.yml +128 -0
  122. data/activeadmin-3.5.1/config/locales/it.yml +154 -0
  123. data/activeadmin-3.5.1/config/locales/ja.yml +133 -0
  124. data/activeadmin-3.5.1/config/locales/ko.yml +113 -0
  125. data/activeadmin-3.5.1/config/locales/lt.yml +134 -0
  126. data/activeadmin-3.5.1/config/locales/lv.yml +85 -0
  127. data/activeadmin-3.5.1/config/locales/mk.yml +126 -0
  128. data/activeadmin-3.5.1/config/locales/nb.yml +122 -0
  129. data/activeadmin-3.5.1/config/locales/nl.yml +136 -0
  130. data/activeadmin-3.5.1/config/locales/pl.yml +160 -0
  131. data/activeadmin-3.5.1/config/locales/pt-BR.yml +135 -0
  132. data/activeadmin-3.5.1/config/locales/pt-PT.yml +85 -0
  133. data/activeadmin-3.5.1/config/locales/ro.yml +90 -0
  134. data/activeadmin-3.5.1/config/locales/ru.yml +135 -0
  135. data/activeadmin-3.5.1/config/locales/sk.yml +160 -0
  136. data/activeadmin-3.5.1/config/locales/sv-SE.yml +154 -0
  137. data/activeadmin-3.5.1/config/locales/tr.yml +133 -0
  138. data/activeadmin-3.5.1/config/locales/uk.yml +132 -0
  139. data/activeadmin-3.5.1/config/locales/vi.yml +154 -0
  140. data/activeadmin-3.5.1/config/locales/zh-CN.yml +154 -0
  141. data/activeadmin-3.5.1/config/locales/zh-TW.yml +128 -0
  142. data/activeadmin-3.5.1/lib/active_admin/abstract_view_factory.rb +48 -0
  143. data/activeadmin-3.5.1/lib/active_admin/application.rb +234 -0
  144. data/activeadmin-3.5.1/lib/active_admin/application_settings.rb +43 -0
  145. data/activeadmin-3.5.1/lib/active_admin/asset_registration.rb +30 -0
  146. data/activeadmin-3.5.1/lib/active_admin/authorization_adapter.rb +132 -0
  147. data/activeadmin-3.5.1/lib/active_admin/base_controller/authorization.rb +129 -0
  148. data/activeadmin-3.5.1/lib/active_admin/base_controller/menu.rb +35 -0
  149. data/activeadmin-3.5.1/lib/active_admin/base_controller.rb +82 -0
  150. data/activeadmin-3.5.1/lib/active_admin/batch_actions/controller.rb +41 -0
  151. data/activeadmin-3.5.1/lib/active_admin/batch_actions/resource_extension.rb +157 -0
  152. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/batch_action_form.rb +39 -0
  153. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/batch_action_selector.rb +59 -0
  154. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/selection_cells.rb +39 -0
  155. data/activeadmin-3.5.1/lib/active_admin/batch_actions.rb +17 -0
  156. data/activeadmin-3.5.1/lib/active_admin/callbacks.rb +89 -0
  157. data/activeadmin-3.5.1/lib/active_admin/cancan_adapter.rb +37 -0
  158. data/activeadmin-3.5.1/lib/active_admin/collection_decorator.rb +32 -0
  159. data/activeadmin-3.5.1/lib/active_admin/component.rb +6 -0
  160. data/activeadmin-3.5.1/lib/active_admin/controller_action.rb +14 -0
  161. data/activeadmin-3.5.1/lib/active_admin/csv_builder.rb +144 -0
  162. data/activeadmin-3.5.1/lib/active_admin/dependency.rb +97 -0
  163. data/activeadmin-3.5.1/lib/active_admin/devise.rb +91 -0
  164. data/activeadmin-3.5.1/lib/active_admin/dsl.rb +161 -0
  165. data/activeadmin-3.5.1/lib/active_admin/dynamic_setting.rb +39 -0
  166. data/activeadmin-3.5.1/lib/active_admin/dynamic_settings_node.rb +29 -0
  167. data/activeadmin-3.5.1/lib/active_admin/engine.rb +29 -0
  168. data/activeadmin-3.5.1/lib/active_admin/error.rb +63 -0
  169. data/activeadmin-3.5.1/lib/active_admin/filters/active.rb +30 -0
  170. data/activeadmin-3.5.1/lib/active_admin/filters/active_filter.rb +124 -0
  171. data/activeadmin-3.5.1/lib/active_admin/filters/active_sidebar.rb +28 -0
  172. data/activeadmin-3.5.1/lib/active_admin/filters/dsl.rb +22 -0
  173. data/activeadmin-3.5.1/lib/active_admin/filters/forms.rb +86 -0
  174. data/activeadmin-3.5.1/lib/active_admin/filters/formtastic_addons.rb +75 -0
  175. data/activeadmin-3.5.1/lib/active_admin/filters/resource_extension.rb +180 -0
  176. data/activeadmin-3.5.1/lib/active_admin/filters.rb +12 -0
  177. data/activeadmin-3.5.1/lib/active_admin/form_builder.rb +186 -0
  178. data/activeadmin-3.5.1/lib/active_admin/generators/boilerplate.rb +54 -0
  179. data/activeadmin-3.5.1/lib/active_admin/helpers/collection.rb +21 -0
  180. data/activeadmin-3.5.1/lib/active_admin/helpers/i18n.rb +8 -0
  181. data/activeadmin-3.5.1/lib/active_admin/helpers/optional_display.rb +39 -0
  182. data/activeadmin-3.5.1/lib/active_admin/helpers/routes/url_helpers.rb +16 -0
  183. data/activeadmin-3.5.1/lib/active_admin/helpers/scope_chain.rb +25 -0
  184. data/activeadmin-3.5.1/lib/active_admin/inputs/datepicker_input.rb +28 -0
  185. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/base/search_method_select.rb +76 -0
  186. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/base.rb +45 -0
  187. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/boolean_input.rb +25 -0
  188. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/check_boxes_input.rb +51 -0
  189. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/date_picker_input.rb +14 -0
  190. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/date_range_input.rb +53 -0
  191. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/numeric_input.rb +13 -0
  192. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/select_input.rb +59 -0
  193. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/string_input.rb +27 -0
  194. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/text_input.rb +26 -0
  195. data/activeadmin-3.5.1/lib/active_admin/inputs.rb +22 -0
  196. data/activeadmin-3.5.1/lib/active_admin/localizers/resource_localizer.rb +36 -0
  197. data/activeadmin-3.5.1/lib/active_admin/localizers.rb +12 -0
  198. data/activeadmin-3.5.1/lib/active_admin/menu.rb +107 -0
  199. data/activeadmin-3.5.1/lib/active_admin/menu_collection.rb +92 -0
  200. data/activeadmin-3.5.1/lib/active_admin/menu_item.rb +70 -0
  201. data/activeadmin-3.5.1/lib/active_admin/namespace.rb +267 -0
  202. data/activeadmin-3.5.1/lib/active_admin/namespace_settings.rb +127 -0
  203. data/activeadmin-3.5.1/lib/active_admin/order_clause.rb +49 -0
  204. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/comment.rb +40 -0
  205. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/namespace_helper.rb +15 -0
  206. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/resource_helper.rb +18 -0
  207. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/show_page_helper.rb +24 -0
  208. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +101 -0
  209. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/views.rb +3 -0
  210. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments.rb +102 -0
  211. data/activeadmin-3.5.1/lib/active_admin/orm/active_record.rb +6 -0
  212. data/activeadmin-3.5.1/lib/active_admin/orm/mongoid.rb +2 -0
  213. data/activeadmin-3.5.1/lib/active_admin/page.rb +112 -0
  214. data/activeadmin-3.5.1/lib/active_admin/page_controller.rb +30 -0
  215. data/activeadmin-3.5.1/lib/active_admin/page_dsl.rb +33 -0
  216. data/activeadmin-3.5.1/lib/active_admin/page_presenter.rb +34 -0
  217. data/activeadmin-3.5.1/lib/active_admin/pundit_adapter.rb +123 -0
  218. data/activeadmin-3.5.1/lib/active_admin/resource/action_items.rb +121 -0
  219. data/activeadmin-3.5.1/lib/active_admin/resource/attributes.rb +55 -0
  220. data/activeadmin-3.5.1/lib/active_admin/resource/belongs_to.rb +53 -0
  221. data/activeadmin-3.5.1/lib/active_admin/resource/controllers.rb +20 -0
  222. data/activeadmin-3.5.1/lib/active_admin/resource/includes.rb +13 -0
  223. data/activeadmin-3.5.1/lib/active_admin/resource/menu.rb +68 -0
  224. data/activeadmin-3.5.1/lib/active_admin/resource/model.rb +16 -0
  225. data/activeadmin-3.5.1/lib/active_admin/resource/naming.rb +63 -0
  226. data/activeadmin-3.5.1/lib/active_admin/resource/ordering.rb +12 -0
  227. data/activeadmin-3.5.1/lib/active_admin/resource/page_presenters.rb +83 -0
  228. data/activeadmin-3.5.1/lib/active_admin/resource/pagination.rb +24 -0
  229. data/activeadmin-3.5.1/lib/active_admin/resource/routes.rb +146 -0
  230. data/activeadmin-3.5.1/lib/active_admin/resource/scope_to.rb +75 -0
  231. data/activeadmin-3.5.1/lib/active_admin/resource/scopes.rb +53 -0
  232. data/activeadmin-3.5.1/lib/active_admin/resource/sidebars.rb +29 -0
  233. data/activeadmin-3.5.1/lib/active_admin/resource.rb +227 -0
  234. data/activeadmin-3.5.1/lib/active_admin/resource_collection.rb +73 -0
  235. data/activeadmin-3.5.1/lib/active_admin/resource_controller/action_builder.rb +32 -0
  236. data/activeadmin-3.5.1/lib/active_admin/resource_controller/data_access.rb +348 -0
  237. data/activeadmin-3.5.1/lib/active_admin/resource_controller/decorators.rb +81 -0
  238. data/activeadmin-3.5.1/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  239. data/activeadmin-3.5.1/lib/active_admin/resource_controller/resource_class_methods.rb +27 -0
  240. data/activeadmin-3.5.1/lib/active_admin/resource_controller/scoping.rb +32 -0
  241. data/activeadmin-3.5.1/lib/active_admin/resource_controller/sidebars.rb +19 -0
  242. data/activeadmin-3.5.1/lib/active_admin/resource_controller/streaming.rb +45 -0
  243. data/activeadmin-3.5.1/lib/active_admin/resource_controller.rb +68 -0
  244. data/activeadmin-3.5.1/lib/active_admin/resource_dsl.rb +210 -0
  245. data/activeadmin-3.5.1/lib/active_admin/router.rb +115 -0
  246. data/activeadmin-3.5.1/lib/active_admin/scope.rb +65 -0
  247. data/activeadmin-3.5.1/lib/active_admin/settings_node.rb +20 -0
  248. data/activeadmin-3.5.1/lib/active_admin/sidebar_section.rb +40 -0
  249. data/activeadmin-3.5.1/lib/active_admin/version.rb +4 -0
  250. data/activeadmin-3.5.1/lib/active_admin/view_factory.rb +28 -0
  251. data/activeadmin-3.5.1/lib/active_admin/view_helpers/active_admin_application_helper.rb +13 -0
  252. data/activeadmin-3.5.1/lib/active_admin/view_helpers/auto_link_helper.rb +46 -0
  253. data/activeadmin-3.5.1/lib/active_admin/view_helpers/breadcrumb_helper.rb +34 -0
  254. data/activeadmin-3.5.1/lib/active_admin/view_helpers/display_helper.rb +119 -0
  255. data/activeadmin-3.5.1/lib/active_admin/view_helpers/download_format_links_helper.rb +60 -0
  256. data/activeadmin-3.5.1/lib/active_admin/view_helpers/fields_for.rb +51 -0
  257. data/activeadmin-3.5.1/lib/active_admin/view_helpers/flash_helper.rb +15 -0
  258. data/activeadmin-3.5.1/lib/active_admin/view_helpers/form_helper.rb +21 -0
  259. data/activeadmin-3.5.1/lib/active_admin/view_helpers/method_or_proc_helper.rb +101 -0
  260. data/activeadmin-3.5.1/lib/active_admin/view_helpers/scope_name_helper.rb +17 -0
  261. data/activeadmin-3.5.1/lib/active_admin/view_helpers/sidebar_helper.rb +16 -0
  262. data/activeadmin-3.5.1/lib/active_admin/view_helpers/title_helper.rb +12 -0
  263. data/activeadmin-3.5.1/lib/active_admin/view_helpers/view_factory_helper.rb +12 -0
  264. data/activeadmin-3.5.1/lib/active_admin/view_helpers.rb +21 -0
  265. data/activeadmin-3.5.1/lib/active_admin/views/action_items.rb +18 -0
  266. data/activeadmin-3.5.1/lib/active_admin/views/components/active_admin_form.rb +164 -0
  267. data/activeadmin-3.5.1/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  268. data/activeadmin-3.5.1/lib/active_admin/views/components/attributes_table.rb +95 -0
  269. data/activeadmin-3.5.1/lib/active_admin/views/components/blank_slate.rb +18 -0
  270. data/activeadmin-3.5.1/lib/active_admin/views/components/columns.rb +162 -0
  271. data/activeadmin-3.5.1/lib/active_admin/views/components/dropdown_menu.rb +69 -0
  272. data/activeadmin-3.5.1/lib/active_admin/views/components/index_list.rb +70 -0
  273. data/activeadmin-3.5.1/lib/active_admin/views/components/menu.rb +33 -0
  274. data/activeadmin-3.5.1/lib/active_admin/views/components/menu_item.rb +59 -0
  275. data/activeadmin-3.5.1/lib/active_admin/views/components/paginated_collection.rb +164 -0
  276. data/activeadmin-3.5.1/lib/active_admin/views/components/panel.rb +39 -0
  277. data/activeadmin-3.5.1/lib/active_admin/views/components/scopes.rb +75 -0
  278. data/activeadmin-3.5.1/lib/active_admin/views/components/sidebar.rb +14 -0
  279. data/activeadmin-3.5.1/lib/active_admin/views/components/sidebar_section.rb +35 -0
  280. data/activeadmin-3.5.1/lib/active_admin/views/components/site_title.rb +55 -0
  281. data/activeadmin-3.5.1/lib/active_admin/views/components/status_tag.rb +76 -0
  282. data/activeadmin-3.5.1/lib/active_admin/views/components/table_for.rb +211 -0
  283. data/activeadmin-3.5.1/lib/active_admin/views/components/tabs.rb +41 -0
  284. data/activeadmin-3.5.1/lib/active_admin/views/components/unsupported_browser.rb +12 -0
  285. data/activeadmin-3.5.1/lib/active_admin/views/footer.rb +32 -0
  286. data/activeadmin-3.5.1/lib/active_admin/views/header.rb +20 -0
  287. data/activeadmin-3.5.1/lib/active_admin/views/index_as_block.rb +37 -0
  288. data/activeadmin-3.5.1/lib/active_admin/views/index_as_blog.rb +156 -0
  289. data/activeadmin-3.5.1/lib/active_admin/views/index_as_grid.rb +81 -0
  290. data/activeadmin-3.5.1/lib/active_admin/views/index_as_table.rb +401 -0
  291. data/activeadmin-3.5.1/lib/active_admin/views/pages/base.rb +134 -0
  292. data/activeadmin-3.5.1/lib/active_admin/views/pages/form.rb +65 -0
  293. data/activeadmin-3.5.1/lib/active_admin/views/pages/index.rb +166 -0
  294. data/activeadmin-3.5.1/lib/active_admin/views/pages/layout.rb +27 -0
  295. data/activeadmin-3.5.1/lib/active_admin/views/pages/page.rb +31 -0
  296. data/activeadmin-3.5.1/lib/active_admin/views/pages/show.rb +60 -0
  297. data/activeadmin-3.5.1/lib/active_admin/views/tabbed_navigation.rb +12 -0
  298. data/activeadmin-3.5.1/lib/active_admin/views/title_bar.rb +56 -0
  299. data/activeadmin-3.5.1/lib/active_admin/views.rb +9 -0
  300. data/activeadmin-3.5.1/lib/active_admin.rb +135 -0
  301. data/activeadmin-3.5.1/lib/activeadmin.rb +2 -0
  302. data/activeadmin-3.5.1/lib/generators/active_admin/assets/assets_generator.rb +15 -0
  303. data/activeadmin-3.5.1/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  304. data/activeadmin-3.5.1/lib/generators/active_admin/assets/templates/active_admin.scss +17 -0
  305. data/activeadmin-3.5.1/lib/generators/active_admin/devise/devise_generator.rb +69 -0
  306. data/activeadmin-3.5.1/lib/generators/active_admin/install/install_generator.rb +56 -0
  307. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/active_admin.rb.erb +352 -0
  308. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/admin_users.rb.erb +28 -0
  309. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/dashboard.rb +33 -0
  310. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +16 -0
  311. data/activeadmin-3.5.1/lib/generators/active_admin/page/USAGE +8 -0
  312. data/activeadmin-3.5.1/lib/generators/active_admin/page/page_generator.rb +13 -0
  313. data/activeadmin-3.5.1/lib/generators/active_admin/page/templates/page.rb +6 -0
  314. data/activeadmin-3.5.1/lib/generators/active_admin/resource/resource_generator.rb +21 -0
  315. data/activeadmin-3.5.1/lib/generators/active_admin/resource/templates/admin.rb.erb +46 -0
  316. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  317. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  318. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  319. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  320. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  321. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/data.js +39 -0
  322. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/disable-selection.js +51 -0
  323. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/focusable.js +79 -0
  324. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +81 -0
  325. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/keycode.js +51 -0
  326. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/labels.js +70 -0
  327. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/plugin.js +49 -0
  328. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/position.js +513 -0
  329. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/scroll-parent.js +50 -0
  330. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/tabbable.js +41 -0
  331. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/unique-id.js +54 -0
  332. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/version.js +20 -0
  333. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widget.js +761 -0
  334. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/button.js +454 -0
  335. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +294 -0
  336. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +304 -0
  337. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +2240 -0
  338. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +957 -0
  339. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +1264 -0
  340. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +226 -0
  341. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +1281 -0
  342. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +1614 -0
  343. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +918 -0
  344. data/ultra-quick-hub.gemspec +12 -0
  345. metadata +384 -0
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Dependency
4
+ module Requirements
5
+ DEVISE = ">= 4.0", "< 6"
6
+ end
7
+
8
+ # Provides a clean interface to check for gem dependencies at runtime.
9
+ #
10
+ # ActiveAdmin::Dependency.rails
11
+ # => #<ActiveAdmin::Dependency::Matcher for rails 6.0.3.2>
12
+ #
13
+ # ActiveAdmin::Dependency.rails?
14
+ # => true
15
+ #
16
+ # ActiveAdmin::Dependency.rails? '>= 6.1'
17
+ # => false
18
+ #
19
+ # ActiveAdmin::Dependency.rails? '= 6.0.3.2'
20
+ # => true
21
+ #
22
+ # ActiveAdmin::Dependency.rails? '~> 6.0.3'
23
+ # => true
24
+ #
25
+ # ActiveAdmin::Dependency.rails? '>= 6.0.3', '<= 6.1.0'
26
+ # => true
27
+ #
28
+ # ActiveAdmin::Dependency.rails! '5'
29
+ # -> ActiveAdmin::DependencyError: You provided rails 4.2.7 but we need: 5.
30
+ #
31
+ # ActiveAdmin::Dependency.devise!
32
+ # -> ActiveAdmin::DependencyError: To use devise you need to specify it in your Gemfile.
33
+ #
34
+ #
35
+ # All but the pessimistic operator (~>) can also be run using Ruby's comparison syntax.
36
+ #
37
+ # ActiveAdmin::Dependency.rails >= '4.2.7'
38
+ # => true
39
+ #
40
+ # Which is especially useful if you're looking up a gem with dashes in the name.
41
+ #
42
+ # ActiveAdmin::Dependency['jquery-rails'] < 5
43
+ # => false
44
+ #
45
+ def self.method_missing(name, *args)
46
+ if name[-1] == "?"
47
+ Matcher.new(name[0..-2]).match? args
48
+ elsif name[-1] == "!"
49
+ Matcher.new(name[0..-2]).match! args
50
+ else
51
+ Matcher.new name.to_s
52
+ end
53
+ end
54
+
55
+ def self.[](name)
56
+ Matcher.new name.to_s
57
+ end
58
+
59
+ class Matcher
60
+ attr_reader :name
61
+
62
+ def initialize(name)
63
+ @name = name
64
+ end
65
+
66
+ def spec
67
+ @spec ||= Gem.loaded_specs[name]
68
+ end
69
+
70
+ def spec!
71
+ spec || raise(DependencyError, "To use #{name} you need to specify it in your Gemfile.")
72
+ end
73
+
74
+ def match?(*reqs)
75
+ !!spec && Gem::Requirement.create(reqs).satisfied_by?(spec.version)
76
+ end
77
+
78
+ def match!(*reqs)
79
+ unless match? reqs
80
+ raise DependencyError, "You provided #{spec!.name} #{spec!.version} but we need: #{reqs.join ', '}."
81
+ end
82
+ end
83
+
84
+ include Comparable
85
+
86
+ def <=>(other)
87
+ spec!.version <=> Gem::Version.create(other)
88
+ end
89
+
90
+ def inspect
91
+ info = spec ? "#{spec.name} #{spec.version}" : "(missing)"
92
+ "<ActiveAdmin::Dependency::Matcher for #{info}>"
93
+ end
94
+ end
95
+
96
+ end
97
+ end
@@ -0,0 +1,91 @@
1
+ # frozen_string_literal: true
2
+ ActiveAdmin::Dependency.devise! ActiveAdmin::Dependency::Requirements::DEVISE
3
+
4
+ require "devise"
5
+
6
+ module ActiveAdmin
7
+ module Devise
8
+
9
+ def self.config
10
+ {
11
+ path: ActiveAdmin.application.default_namespace || "/",
12
+ controllers: ActiveAdmin::Devise.controllers,
13
+ path_names: { sign_in: "login", sign_out: "logout" },
14
+ sign_out_via: [*::Devise.sign_out_via, ActiveAdmin.application.logout_link_method].uniq
15
+ }
16
+ end
17
+
18
+ def self.controllers
19
+ {
20
+ sessions: "active_admin/devise/sessions",
21
+ passwords: "active_admin/devise/passwords",
22
+ unlocks: "active_admin/devise/unlocks",
23
+ registrations: "active_admin/devise/registrations",
24
+ confirmations: "active_admin/devise/confirmations"
25
+ }
26
+ end
27
+
28
+ module Controller
29
+ extend ::ActiveSupport::Concern
30
+ included do
31
+ layout "active_admin_logged_out"
32
+ helper ::ActiveAdmin::ViewHelpers
33
+ end
34
+
35
+ # Redirect to the default namespace on logout
36
+ def root_path
37
+ namespace = ActiveAdmin.application.default_namespace.presence
38
+ root_path_method = [namespace, :root_path].compact.join("_")
39
+
40
+ path = if Helpers::Routes.respond_to? root_path_method
41
+ Helpers::Routes.send root_path_method
42
+ else
43
+ # Guess a root_path when url_helpers not helpful
44
+ "/#{namespace}"
45
+ end
46
+
47
+ # NOTE: `relative_url_root` is deprecated by Rails.
48
+ # Remove prefix here if it is removed completely.
49
+ prefix = Rails.configuration.action_controller[:relative_url_root] || ""
50
+ prefix + path
51
+ end
52
+ end
53
+
54
+ class SessionsController < ::Devise::SessionsController
55
+ include ::ActiveAdmin::Devise::Controller
56
+
57
+ ActiveSupport.run_load_hooks(:active_admin_controller, self)
58
+ end
59
+
60
+ class PasswordsController < ::Devise::PasswordsController
61
+ include ::ActiveAdmin::Devise::Controller
62
+
63
+ ActiveSupport.run_load_hooks(:active_admin_controller, self)
64
+ end
65
+
66
+ class UnlocksController < ::Devise::UnlocksController
67
+ include ::ActiveAdmin::Devise::Controller
68
+
69
+ ActiveSupport.run_load_hooks(:active_admin_controller, self)
70
+ end
71
+
72
+ class RegistrationsController < ::Devise::RegistrationsController
73
+ include ::ActiveAdmin::Devise::Controller
74
+
75
+ ActiveSupport.run_load_hooks(:active_admin_controller, self)
76
+ end
77
+
78
+ class ConfirmationsController < ::Devise::ConfirmationsController
79
+ include ::ActiveAdmin::Devise::Controller
80
+
81
+ ActiveSupport.run_load_hooks(:active_admin_controller, self)
82
+ end
83
+
84
+ def self.controllers_for_filters
85
+ [SessionsController, PasswordsController, UnlocksController,
86
+ RegistrationsController, ConfirmationsController
87
+ ]
88
+ end
89
+
90
+ end
91
+ end
@@ -0,0 +1,161 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+
4
+ # The Active Admin DSL. This class is where all the registration blocks
5
+ # are evaluated. This is the central place for the API given to
6
+ # users of Active Admin.
7
+ #
8
+ class DSL
9
+
10
+ def initialize(config)
11
+ @config = config
12
+ end
13
+
14
+ # Runs the registration block inside this object
15
+ def run_registration_block(&block)
16
+ instance_exec &block if block_given?
17
+ end
18
+
19
+ # The instance of ActiveAdmin::Resource that's being registered
20
+ # currently. You can use this within your registration blocks to
21
+ # modify options:
22
+ #
23
+ # eg:
24
+ #
25
+ # ActiveAdmin.register Post do
26
+ # config.sort_order = "id_desc"
27
+ # end
28
+ #
29
+ def config
30
+ @config
31
+ end
32
+
33
+ # Include a module with this resource. The modules's `included` method
34
+ # is called with the instance of the `ActiveAdmin::DSL` passed into it.
35
+ #
36
+ # eg:
37
+ #
38
+ # module HelpSidebar
39
+ #
40
+ # def self.included(dsl)
41
+ # dsl.sidebar "Help" do
42
+ # "Call us for Help"
43
+ # end
44
+ # end
45
+ #
46
+ # end
47
+ #
48
+ # ActiveAdmin.register Post do
49
+ # include HelpSidebar
50
+ # end
51
+ #
52
+ # @param [Module] mod A module to include
53
+ #
54
+ # @return [Nil]
55
+ def include(mod)
56
+ mod.included(self)
57
+ end
58
+
59
+ # Returns the controller for this resource. If you pass a
60
+ # block, it will be evaluated in the controller.
61
+ #
62
+ # Example:
63
+ #
64
+ # ActiveAdmin.register Post do
65
+ #
66
+ # controller do
67
+ # def some_method_on_controller
68
+ # # Method gets added to Admin::PostsController
69
+ # end
70
+ # end
71
+ #
72
+ # end
73
+ #
74
+ def controller(&block)
75
+ @config.controller.class_exec(&block) if block_given?
76
+ @config.controller
77
+ end
78
+
79
+ # Add a new action item to the resource
80
+ #
81
+ # @param [Symbol] name
82
+ # @param [Hash] options valid keys include:
83
+ # :only: A single or array of controller actions to display
84
+ # this action item on.
85
+ # :except: A single or array of controller actions not to
86
+ # display this action item on.
87
+ def action_item(name, options = {}, &block)
88
+ config.add_action_item(name, options, &block)
89
+ end
90
+
91
+ # Add a new batch action item to the resource
92
+ # Provide a symbol/string to register the action, options, & block to execute on request
93
+ #
94
+ # To unregister an existing action, just provide the symbol & pass false as the second param
95
+ #
96
+ # @param [Symbol or String] title
97
+ # @param [Hash] options valid keys include:
98
+ # => :if is a proc that will be called to determine if the BatchAction should be displayed
99
+ # => :sort_order is used to sort the batch actions ascending
100
+ # => :confirm is a string which the user will have to accept in order to process the action
101
+ #
102
+ def batch_action(title, options = {}, &block)
103
+ # Create symbol & title information
104
+ if title.is_a? String
105
+ sym = title.titleize.tr(" ", "").underscore.to_sym
106
+ else
107
+ sym = title
108
+ title = sym.to_s.titleize
109
+ end
110
+
111
+ # Either add/remove the batch action
112
+ unless options == false
113
+ config.add_batch_action(sym, title, options, &block)
114
+ else
115
+ config.remove_batch_action sym
116
+ end
117
+ end
118
+
119
+ # Set the options that are available for the item that will be placed in the global
120
+ # navigation of the menu.
121
+ def menu(options = {})
122
+ config.menu_item_options = options
123
+ end
124
+
125
+ # Set the name of the navigation menu to display. This is mainly used in conjunction with the
126
+ # `#belongs_to` functionality.
127
+ #
128
+ # @param [Symbol] menu_name The name of the menu to display as the global navigation
129
+ # when viewing this resource. Defaults to a menu named `:default`.
130
+ #
131
+ # Pass a block returning the name of a menu you want rendered for the request, being
132
+ # executed in the context of the controller
133
+ #
134
+ def navigation_menu(menu_name = nil, &block)
135
+ config.navigation_menu_name = menu_name || block
136
+ end
137
+
138
+ # Rewrite breadcrumb links.
139
+ # Block will be executed inside controller.
140
+ # Block must return an array if you want to rewrite breadcrumb links.
141
+ #
142
+ # Example:
143
+ # ActiveAdmin.register Post do
144
+ #
145
+ # breadcrumb do
146
+ # [
147
+ # link_to('my piece', '/my/link/to/piece')
148
+ # ]
149
+ # end
150
+ # end
151
+ #
152
+ def breadcrumb(&block)
153
+ config.breadcrumb = block
154
+ end
155
+
156
+ def sidebar(name, options = {}, &block)
157
+ config.sidebar_sections << ActiveAdmin::SidebarSection.new(name, options, &block)
158
+ end
159
+
160
+ end
161
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+
4
+ class DynamicSetting
5
+ def self.build(setting, type)
6
+ (type ? klass(type) : self).new(setting)
7
+ end
8
+
9
+ def self.klass(type)
10
+ klass = "#{type.to_s.camelcase}Setting"
11
+ raise ArgumentError, "Unknown type: #{type}" unless ActiveAdmin.const_defined?(klass)
12
+ ActiveAdmin.const_get(klass)
13
+ end
14
+
15
+ def initialize(setting)
16
+ @setting = setting
17
+ end
18
+
19
+ def value(*_args)
20
+ @setting
21
+ end
22
+ end
23
+
24
+ # Many configuration options (Ex: site_title, title_image) could either be
25
+ # static (String), methods (Symbol) or procs (Proc). This wrapper takes care of
26
+ # returning the content when String or using instance_eval when Symbol or Proc.
27
+ #
28
+ class StringSymbolOrProcSetting < DynamicSetting
29
+ def value(context = self)
30
+ case @setting
31
+ when Symbol, Proc
32
+ context.instance_eval(&@setting)
33
+ else
34
+ @setting
35
+ end
36
+ end
37
+ end
38
+
39
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin/dynamic_setting"
3
+ require "active_admin/settings_node"
4
+
5
+ module ActiveAdmin
6
+
7
+ class DynamicSettingsNode < SettingsNode
8
+ class << self
9
+ def register(name, value, type = nil)
10
+ class_attribute "#{name}_setting"
11
+ add_reader(name)
12
+ add_writer(name, type)
13
+ send "#{name}=", value
14
+ end
15
+
16
+ def add_reader(name)
17
+ define_singleton_method(name) do |*args|
18
+ send("#{name}_setting").value(*args)
19
+ end
20
+ end
21
+
22
+ def add_writer(name, type)
23
+ define_singleton_method("#{name}=") do |value|
24
+ send("#{name}_setting=", DynamicSetting.build(value, type))
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ class Engine < ::Rails::Engine
4
+ # Set default values for app_path and load_paths before running initializers
5
+ initializer "active_admin.load_app_path", before: :load_config_initializers do |app|
6
+ ActiveAdmin::Application.setting :app_path, app.root
7
+ ActiveAdmin::Application.setting :load_paths, [File.expand_path("app/admin", app.root)]
8
+ end
9
+
10
+ initializer "active_admin.precompile", group: :all do |app|
11
+ unless ActiveAdmin.application.use_webpacker
12
+ ActiveAdmin.application.stylesheets.each do |path, _|
13
+ app.config.assets.precompile << path
14
+ end
15
+ ActiveAdmin.application.javascripts.each do |path, _|
16
+ app.config.assets.precompile << path
17
+ end
18
+ end
19
+ end
20
+
21
+ initializer "active_admin.routes" do
22
+ require "active_admin/helpers/routes/url_helpers"
23
+ end
24
+
25
+ initializer "active_admin.deprecator" do |app|
26
+ app.deprecators[:activeadmin] = ActiveAdmin.deprecator if app.respond_to?(:deprecators)
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ # Exception class to raise when there is an authorized access
4
+ # exception thrown. The exception has a few goodies that may
5
+ # be useful for capturing / recognizing security issues.
6
+ class AccessDenied < StandardError
7
+ attr_reader :user, :action, :subject
8
+
9
+ def initialize(user, action, subject = nil)
10
+ @user = user
11
+ @action = action
12
+ @subject = subject
13
+
14
+ super()
15
+ end
16
+
17
+ def message
18
+ I18n.t("active_admin.access_denied.message")
19
+ end
20
+ end
21
+
22
+ class Error < RuntimeError
23
+ end
24
+
25
+ class ErrorLoading < Error
26
+ # Locates the most recent file and line from the caught exception's backtrace.
27
+ def find_cause(folder, backtrace)
28
+ backtrace.grep(/\/(#{folder}\/.*\.rb):(\d+)/) { [$1, $2] }.first
29
+ end
30
+ end
31
+
32
+ class DatabaseHitDuringLoad < ErrorLoading
33
+ def initialize(exception)
34
+ file, line = find_cause(:app, exception.backtrace)
35
+
36
+ super "Your file, #{file} (line #{line}), caused a database error while Active Admin was loading. This " +
37
+ "is most common when your database is missing or doesn't have the latest migrations applied. To " +
38
+ "prevent this error, move the code to a place where it will only be run when a page is rendered. " +
39
+ "One solution can be, to wrap the query in a Proc. " +
40
+ "Original error message: #{exception.message}"
41
+ end
42
+
43
+ def self.capture
44
+ yield
45
+ rescue *database_error_classes => exception
46
+ raise new exception
47
+ end
48
+
49
+ def self.database_error_classes
50
+ @classes ||= []
51
+ end
52
+ end
53
+
54
+ class DependencyError < ErrorLoading
55
+ end
56
+
57
+ class NoMenuError < KeyError
58
+ end
59
+
60
+ class GeneratorError < Error
61
+ end
62
+
63
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin/filters/active_filter"
3
+
4
+ module ActiveAdmin
5
+ module Filters
6
+
7
+ class Active
8
+ attr_accessor :filters, :resource
9
+
10
+ # Instantiate a `Active` object containing collection of current active filters
11
+
12
+ # @param resource [ActiveAdmin::Resource] current resource
13
+ # @param search [Ransack::Search] search object
14
+ #
15
+ # @see ActiveAdmin::ResourceController::DataAcces#apply_filtering
16
+ def initialize(resource, search)
17
+ @resource = resource
18
+ @filters = build_filters(search.conditions)
19
+ end
20
+
21
+ private
22
+
23
+ def build_filters(conditions)
24
+ conditions.map { |condition| ActiveFilter.new(resource, condition.dup) }
25
+ end
26
+
27
+ end
28
+
29
+ end
30
+ end
@@ -0,0 +1,124 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Filters
4
+
5
+ class ActiveFilter
6
+ include ActiveAdmin::ViewHelpers
7
+
8
+ attr_reader :resource, :condition, :related_class
9
+
10
+ # Instantiate a `ActiveFilter`
11
+ #
12
+ # @param resource [ActiveAdmin::Resource] current resource
13
+ # @param condition [Ransack::Nodes::Condition] applied ransack condition
14
+ def initialize(resource, condition)
15
+ @resource = resource
16
+ @condition = condition
17
+ @related_class = find_class if find_class?
18
+ end
19
+
20
+ def values
21
+ condition_values = condition.values.map(&:value)
22
+ if related_class
23
+ related_class.where(related_primary_key => condition_values)
24
+ else
25
+ condition_values
26
+ end
27
+ end
28
+
29
+ def label
30
+ translated_predicate = predicate_name.downcase
31
+ if filter_label && filter_label.is_a?(Proc)
32
+ "#{filter_label.call} #{translated_predicate}"
33
+ elsif filter_label
34
+ "#{filter_label} #{translated_predicate}"
35
+ elsif related_class
36
+ "#{related_class_name} #{translated_predicate}"
37
+ else
38
+ "#{attribute_name} #{translated_predicate}"
39
+ end.strip
40
+ end
41
+
42
+ def predicate_name
43
+ I18n.t(
44
+ "ransack.predicates.#{condition.predicate.name}",
45
+ default: ransack_predicate_name)
46
+ end
47
+
48
+ def html_options
49
+ { class: "current_filter current_filter_#{condition.key}" }
50
+ end
51
+
52
+ private
53
+
54
+ def resource_class
55
+ resource.resource_class
56
+ end
57
+
58
+ def attribute_name
59
+ resource_class.human_attribute_name(name)
60
+ end
61
+
62
+ def related_class_name
63
+ return unless related_class
64
+
65
+ related_class.model_name.human
66
+ end
67
+
68
+ def filter_label
69
+ return unless filter
70
+
71
+ filter[:label] || I18n.t(name, scope: ["formtastic", "labels"], default: nil)
72
+ end
73
+
74
+ #@return Ransack::Nodes::Attribute
75
+ def condition_attribute
76
+ condition.attributes[0]
77
+ end
78
+
79
+ def name
80
+ condition_attribute.attr_name
81
+ end
82
+
83
+ def ransack_predicate_name
84
+ Ransack::Translate.predicate(condition.predicate.name)
85
+ end
86
+
87
+ def find_class?
88
+ ["eq", "in"].include? condition.predicate.arel_predicate
89
+ end
90
+
91
+ # detect related class for Ransack::Nodes::Attribute
92
+ def find_class
93
+ if condition_attribute.klass != resource_class && condition_attribute.klass.primary_key == name.to_s
94
+ condition_attribute.klass
95
+ elsif predicate_association
96
+ predicate_association.klass
97
+ end
98
+ end
99
+
100
+ def filter
101
+ resource.filters[name.to_sym] || resource.filters[condition.key.to_sym]
102
+ end
103
+
104
+ def related_primary_key
105
+ if predicate_association
106
+ predicate_association.association_primary_key
107
+ elsif related_class
108
+ related_class.primary_key
109
+ end
110
+ end
111
+
112
+ def predicate_association
113
+ @predicate_association = find_predicate_association unless defined?(@predicate_association)
114
+ @predicate_association
115
+ end
116
+
117
+ def find_predicate_association
118
+ condition_attribute.klass.reflect_on_all_associations.
119
+ reject { |r| r.options[:polymorphic] }. #skip polymorphic
120
+ detect { |r| r.foreign_key.to_s == name.to_s }
121
+ end
122
+ end
123
+ end
124
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin/filters/active"
3
+
4
+ module ActiveAdmin
5
+ module Filters
6
+ class ActiveSidebar < ActiveAdmin::SidebarSection
7
+
8
+ def initialize
9
+ super "search_status", sidebar_options
10
+ end
11
+
12
+ def block
13
+ -> { active_filters_sidebar_content }
14
+ end
15
+
16
+ def title
17
+ I18n.t("active_admin.search_status.headline")
18
+ end
19
+
20
+ protected
21
+
22
+ def sidebar_options
23
+ { only: :index, if: -> { active_admin_config.current_filters_enabled? && (params[:q] || params[:scope]) } }
24
+ end
25
+
26
+ end
27
+ end
28
+ end