super-sharp-tool 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.
Files changed (344) 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/dropdown-menu.js +116 -0
  63. data/activeadmin-3.5.1/app/javascript/active_admin/lib/filters.js +39 -0
  64. data/activeadmin-3.5.1/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  65. data/activeadmin-3.5.1/app/javascript/active_admin/lib/per-page.js +38 -0
  66. data/activeadmin-3.5.1/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  67. data/activeadmin-3.5.1/app/javascript/active_admin/lib/utils.js +40 -0
  68. data/activeadmin-3.5.1/app/views/active_admin/devise/confirmations/new.html.erb +15 -0
  69. data/activeadmin-3.5.1/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +8 -0
  70. data/activeadmin-3.5.1/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +7 -0
  71. data/activeadmin-3.5.1/app/views/active_admin/devise/passwords/edit.html.erb +18 -0
  72. data/activeadmin-3.5.1/app/views/active_admin/devise/passwords/new.html.erb +15 -0
  73. data/activeadmin-3.5.1/app/views/active_admin/devise/registrations/new.html.erb +21 -0
  74. data/activeadmin-3.5.1/app/views/active_admin/devise/sessions/new.html.erb +20 -0
  75. data/activeadmin-3.5.1/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  76. data/activeadmin-3.5.1/app/views/active_admin/devise/shared/_links.erb +33 -0
  77. data/activeadmin-3.5.1/app/views/active_admin/devise/unlocks/new.html.erb +15 -0
  78. data/activeadmin-3.5.1/app/views/active_admin/page/index.html.arb +2 -0
  79. data/activeadmin-3.5.1/app/views/active_admin/resource/edit.html.arb +2 -0
  80. data/activeadmin-3.5.1/app/views/active_admin/resource/index.html.arb +2 -0
  81. data/activeadmin-3.5.1/app/views/active_admin/resource/new.html.arb +2 -0
  82. data/activeadmin-3.5.1/app/views/active_admin/resource/show.html.arb +2 -0
  83. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_first_page.html.erb +11 -0
  84. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_gap.html.erb +8 -0
  85. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_last_page.html.erb +11 -0
  86. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_next_page.html.erb +11 -0
  87. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_page.html.erb +12 -0
  88. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_paginator.html.erb +25 -0
  89. data/activeadmin-3.5.1/app/views/kaminari/active_admin/_prev_page.html.erb +11 -0
  90. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  91. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  92. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  93. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  94. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  95. data/activeadmin-3.5.1/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  96. data/activeadmin-3.5.1/app/views/layouts/active_admin.html.arb +2 -0
  97. data/activeadmin-3.5.1/app/views/layouts/active_admin_logged_out.html.erb +50 -0
  98. data/activeadmin-3.5.1/config/locales/ar.yml +128 -0
  99. data/activeadmin-3.5.1/config/locales/az.yml +131 -0
  100. data/activeadmin-3.5.1/config/locales/bg.yml +112 -0
  101. data/activeadmin-3.5.1/config/locales/bs.yml +114 -0
  102. data/activeadmin-3.5.1/config/locales/ca.yml +98 -0
  103. data/activeadmin-3.5.1/config/locales/cs.yml +102 -0
  104. data/activeadmin-3.5.1/config/locales/da.yml +130 -0
  105. data/activeadmin-3.5.1/config/locales/de-CH.yml +94 -0
  106. data/activeadmin-3.5.1/config/locales/de.yml +154 -0
  107. data/activeadmin-3.5.1/config/locales/el.yml +119 -0
  108. data/activeadmin-3.5.1/config/locales/en-CA.yml +132 -0
  109. data/activeadmin-3.5.1/config/locales/en-GB.yml +132 -0
  110. data/activeadmin-3.5.1/config/locales/en.yml +154 -0
  111. data/activeadmin-3.5.1/config/locales/eo.yml +137 -0
  112. data/activeadmin-3.5.1/config/locales/es-MX.yml +90 -0
  113. data/activeadmin-3.5.1/config/locales/es.yml +154 -0
  114. data/activeadmin-3.5.1/config/locales/fa.yml +112 -0
  115. data/activeadmin-3.5.1/config/locales/fi.yml +105 -0
  116. data/activeadmin-3.5.1/config/locales/fr.yml +133 -0
  117. data/activeadmin-3.5.1/config/locales/he.yml +132 -0
  118. data/activeadmin-3.5.1/config/locales/hr.yml +116 -0
  119. data/activeadmin-3.5.1/config/locales/hu.yml +94 -0
  120. data/activeadmin-3.5.1/config/locales/id.yml +128 -0
  121. data/activeadmin-3.5.1/config/locales/it.yml +154 -0
  122. data/activeadmin-3.5.1/config/locales/ja.yml +133 -0
  123. data/activeadmin-3.5.1/config/locales/ko.yml +113 -0
  124. data/activeadmin-3.5.1/config/locales/lt.yml +134 -0
  125. data/activeadmin-3.5.1/config/locales/lv.yml +85 -0
  126. data/activeadmin-3.5.1/config/locales/mk.yml +126 -0
  127. data/activeadmin-3.5.1/config/locales/nb.yml +122 -0
  128. data/activeadmin-3.5.1/config/locales/nl.yml +136 -0
  129. data/activeadmin-3.5.1/config/locales/pl.yml +160 -0
  130. data/activeadmin-3.5.1/config/locales/pt-BR.yml +135 -0
  131. data/activeadmin-3.5.1/config/locales/pt-PT.yml +85 -0
  132. data/activeadmin-3.5.1/config/locales/ro.yml +90 -0
  133. data/activeadmin-3.5.1/config/locales/ru.yml +135 -0
  134. data/activeadmin-3.5.1/config/locales/sk.yml +160 -0
  135. data/activeadmin-3.5.1/config/locales/sv-SE.yml +154 -0
  136. data/activeadmin-3.5.1/config/locales/tr.yml +133 -0
  137. data/activeadmin-3.5.1/config/locales/uk.yml +132 -0
  138. data/activeadmin-3.5.1/config/locales/vi.yml +154 -0
  139. data/activeadmin-3.5.1/config/locales/zh-CN.yml +154 -0
  140. data/activeadmin-3.5.1/config/locales/zh-TW.yml +128 -0
  141. data/activeadmin-3.5.1/lib/active_admin/abstract_view_factory.rb +48 -0
  142. data/activeadmin-3.5.1/lib/active_admin/application.rb +234 -0
  143. data/activeadmin-3.5.1/lib/active_admin/application_settings.rb +43 -0
  144. data/activeadmin-3.5.1/lib/active_admin/asset_registration.rb +30 -0
  145. data/activeadmin-3.5.1/lib/active_admin/authorization_adapter.rb +132 -0
  146. data/activeadmin-3.5.1/lib/active_admin/base_controller/authorization.rb +129 -0
  147. data/activeadmin-3.5.1/lib/active_admin/base_controller/menu.rb +35 -0
  148. data/activeadmin-3.5.1/lib/active_admin/base_controller.rb +82 -0
  149. data/activeadmin-3.5.1/lib/active_admin/batch_actions/controller.rb +41 -0
  150. data/activeadmin-3.5.1/lib/active_admin/batch_actions/resource_extension.rb +157 -0
  151. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/batch_action_form.rb +39 -0
  152. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/batch_action_selector.rb +59 -0
  153. data/activeadmin-3.5.1/lib/active_admin/batch_actions/views/selection_cells.rb +39 -0
  154. data/activeadmin-3.5.1/lib/active_admin/batch_actions.rb +17 -0
  155. data/activeadmin-3.5.1/lib/active_admin/callbacks.rb +89 -0
  156. data/activeadmin-3.5.1/lib/active_admin/cancan_adapter.rb +37 -0
  157. data/activeadmin-3.5.1/lib/active_admin/collection_decorator.rb +32 -0
  158. data/activeadmin-3.5.1/lib/active_admin/component.rb +6 -0
  159. data/activeadmin-3.5.1/lib/active_admin/controller_action.rb +14 -0
  160. data/activeadmin-3.5.1/lib/active_admin/csv_builder.rb +144 -0
  161. data/activeadmin-3.5.1/lib/active_admin/dependency.rb +97 -0
  162. data/activeadmin-3.5.1/lib/active_admin/devise.rb +91 -0
  163. data/activeadmin-3.5.1/lib/active_admin/dsl.rb +161 -0
  164. data/activeadmin-3.5.1/lib/active_admin/dynamic_setting.rb +39 -0
  165. data/activeadmin-3.5.1/lib/active_admin/dynamic_settings_node.rb +29 -0
  166. data/activeadmin-3.5.1/lib/active_admin/engine.rb +29 -0
  167. data/activeadmin-3.5.1/lib/active_admin/error.rb +63 -0
  168. data/activeadmin-3.5.1/lib/active_admin/filters/active.rb +30 -0
  169. data/activeadmin-3.5.1/lib/active_admin/filters/active_filter.rb +124 -0
  170. data/activeadmin-3.5.1/lib/active_admin/filters/active_sidebar.rb +28 -0
  171. data/activeadmin-3.5.1/lib/active_admin/filters/dsl.rb +22 -0
  172. data/activeadmin-3.5.1/lib/active_admin/filters/forms.rb +86 -0
  173. data/activeadmin-3.5.1/lib/active_admin/filters/formtastic_addons.rb +75 -0
  174. data/activeadmin-3.5.1/lib/active_admin/filters/resource_extension.rb +180 -0
  175. data/activeadmin-3.5.1/lib/active_admin/filters.rb +12 -0
  176. data/activeadmin-3.5.1/lib/active_admin/form_builder.rb +186 -0
  177. data/activeadmin-3.5.1/lib/active_admin/generators/boilerplate.rb +54 -0
  178. data/activeadmin-3.5.1/lib/active_admin/helpers/collection.rb +21 -0
  179. data/activeadmin-3.5.1/lib/active_admin/helpers/i18n.rb +8 -0
  180. data/activeadmin-3.5.1/lib/active_admin/helpers/optional_display.rb +39 -0
  181. data/activeadmin-3.5.1/lib/active_admin/helpers/routes/url_helpers.rb +16 -0
  182. data/activeadmin-3.5.1/lib/active_admin/helpers/scope_chain.rb +25 -0
  183. data/activeadmin-3.5.1/lib/active_admin/inputs/datepicker_input.rb +28 -0
  184. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/base/search_method_select.rb +76 -0
  185. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/base.rb +45 -0
  186. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/boolean_input.rb +25 -0
  187. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/check_boxes_input.rb +51 -0
  188. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/date_picker_input.rb +14 -0
  189. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/date_range_input.rb +53 -0
  190. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/numeric_input.rb +13 -0
  191. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/select_input.rb +59 -0
  192. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/string_input.rb +27 -0
  193. data/activeadmin-3.5.1/lib/active_admin/inputs/filters/text_input.rb +26 -0
  194. data/activeadmin-3.5.1/lib/active_admin/inputs.rb +22 -0
  195. data/activeadmin-3.5.1/lib/active_admin/localizers/resource_localizer.rb +36 -0
  196. data/activeadmin-3.5.1/lib/active_admin/localizers.rb +12 -0
  197. data/activeadmin-3.5.1/lib/active_admin/menu.rb +107 -0
  198. data/activeadmin-3.5.1/lib/active_admin/menu_collection.rb +92 -0
  199. data/activeadmin-3.5.1/lib/active_admin/menu_item.rb +70 -0
  200. data/activeadmin-3.5.1/lib/active_admin/namespace.rb +267 -0
  201. data/activeadmin-3.5.1/lib/active_admin/namespace_settings.rb +127 -0
  202. data/activeadmin-3.5.1/lib/active_admin/order_clause.rb +49 -0
  203. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/comment.rb +40 -0
  204. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/namespace_helper.rb +15 -0
  205. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/resource_helper.rb +18 -0
  206. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/show_page_helper.rb +24 -0
  207. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +101 -0
  208. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments/views.rb +3 -0
  209. data/activeadmin-3.5.1/lib/active_admin/orm/active_record/comments.rb +102 -0
  210. data/activeadmin-3.5.1/lib/active_admin/orm/active_record.rb +6 -0
  211. data/activeadmin-3.5.1/lib/active_admin/orm/mongoid.rb +2 -0
  212. data/activeadmin-3.5.1/lib/active_admin/page.rb +112 -0
  213. data/activeadmin-3.5.1/lib/active_admin/page_controller.rb +30 -0
  214. data/activeadmin-3.5.1/lib/active_admin/page_dsl.rb +33 -0
  215. data/activeadmin-3.5.1/lib/active_admin/page_presenter.rb +34 -0
  216. data/activeadmin-3.5.1/lib/active_admin/pundit_adapter.rb +123 -0
  217. data/activeadmin-3.5.1/lib/active_admin/resource/action_items.rb +121 -0
  218. data/activeadmin-3.5.1/lib/active_admin/resource/attributes.rb +55 -0
  219. data/activeadmin-3.5.1/lib/active_admin/resource/belongs_to.rb +53 -0
  220. data/activeadmin-3.5.1/lib/active_admin/resource/controllers.rb +20 -0
  221. data/activeadmin-3.5.1/lib/active_admin/resource/includes.rb +13 -0
  222. data/activeadmin-3.5.1/lib/active_admin/resource/menu.rb +68 -0
  223. data/activeadmin-3.5.1/lib/active_admin/resource/model.rb +16 -0
  224. data/activeadmin-3.5.1/lib/active_admin/resource/naming.rb +63 -0
  225. data/activeadmin-3.5.1/lib/active_admin/resource/ordering.rb +12 -0
  226. data/activeadmin-3.5.1/lib/active_admin/resource/page_presenters.rb +83 -0
  227. data/activeadmin-3.5.1/lib/active_admin/resource/pagination.rb +24 -0
  228. data/activeadmin-3.5.1/lib/active_admin/resource/routes.rb +146 -0
  229. data/activeadmin-3.5.1/lib/active_admin/resource/scope_to.rb +75 -0
  230. data/activeadmin-3.5.1/lib/active_admin/resource/scopes.rb +53 -0
  231. data/activeadmin-3.5.1/lib/active_admin/resource/sidebars.rb +29 -0
  232. data/activeadmin-3.5.1/lib/active_admin/resource.rb +227 -0
  233. data/activeadmin-3.5.1/lib/active_admin/resource_collection.rb +73 -0
  234. data/activeadmin-3.5.1/lib/active_admin/resource_controller/action_builder.rb +32 -0
  235. data/activeadmin-3.5.1/lib/active_admin/resource_controller/data_access.rb +348 -0
  236. data/activeadmin-3.5.1/lib/active_admin/resource_controller/decorators.rb +81 -0
  237. data/activeadmin-3.5.1/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  238. data/activeadmin-3.5.1/lib/active_admin/resource_controller/resource_class_methods.rb +27 -0
  239. data/activeadmin-3.5.1/lib/active_admin/resource_controller/scoping.rb +32 -0
  240. data/activeadmin-3.5.1/lib/active_admin/resource_controller/sidebars.rb +19 -0
  241. data/activeadmin-3.5.1/lib/active_admin/resource_controller/streaming.rb +45 -0
  242. data/activeadmin-3.5.1/lib/active_admin/resource_controller.rb +68 -0
  243. data/activeadmin-3.5.1/lib/active_admin/resource_dsl.rb +210 -0
  244. data/activeadmin-3.5.1/lib/active_admin/router.rb +115 -0
  245. data/activeadmin-3.5.1/lib/active_admin/scope.rb +65 -0
  246. data/activeadmin-3.5.1/lib/active_admin/settings_node.rb +20 -0
  247. data/activeadmin-3.5.1/lib/active_admin/sidebar_section.rb +40 -0
  248. data/activeadmin-3.5.1/lib/active_admin/version.rb +4 -0
  249. data/activeadmin-3.5.1/lib/active_admin/view_factory.rb +28 -0
  250. data/activeadmin-3.5.1/lib/active_admin/view_helpers/active_admin_application_helper.rb +13 -0
  251. data/activeadmin-3.5.1/lib/active_admin/view_helpers/auto_link_helper.rb +46 -0
  252. data/activeadmin-3.5.1/lib/active_admin/view_helpers/breadcrumb_helper.rb +34 -0
  253. data/activeadmin-3.5.1/lib/active_admin/view_helpers/display_helper.rb +119 -0
  254. data/activeadmin-3.5.1/lib/active_admin/view_helpers/download_format_links_helper.rb +60 -0
  255. data/activeadmin-3.5.1/lib/active_admin/view_helpers/fields_for.rb +51 -0
  256. data/activeadmin-3.5.1/lib/active_admin/view_helpers/flash_helper.rb +15 -0
  257. data/activeadmin-3.5.1/lib/active_admin/view_helpers/form_helper.rb +21 -0
  258. data/activeadmin-3.5.1/lib/active_admin/view_helpers/method_or_proc_helper.rb +101 -0
  259. data/activeadmin-3.5.1/lib/active_admin/view_helpers/scope_name_helper.rb +17 -0
  260. data/activeadmin-3.5.1/lib/active_admin/view_helpers/sidebar_helper.rb +16 -0
  261. data/activeadmin-3.5.1/lib/active_admin/view_helpers/title_helper.rb +12 -0
  262. data/activeadmin-3.5.1/lib/active_admin/view_helpers/view_factory_helper.rb +12 -0
  263. data/activeadmin-3.5.1/lib/active_admin/view_helpers.rb +21 -0
  264. data/activeadmin-3.5.1/lib/active_admin/views/action_items.rb +18 -0
  265. data/activeadmin-3.5.1/lib/active_admin/views/components/active_admin_form.rb +164 -0
  266. data/activeadmin-3.5.1/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  267. data/activeadmin-3.5.1/lib/active_admin/views/components/attributes_table.rb +95 -0
  268. data/activeadmin-3.5.1/lib/active_admin/views/components/blank_slate.rb +18 -0
  269. data/activeadmin-3.5.1/lib/active_admin/views/components/columns.rb +162 -0
  270. data/activeadmin-3.5.1/lib/active_admin/views/components/dropdown_menu.rb +69 -0
  271. data/activeadmin-3.5.1/lib/active_admin/views/components/index_list.rb +70 -0
  272. data/activeadmin-3.5.1/lib/active_admin/views/components/menu.rb +33 -0
  273. data/activeadmin-3.5.1/lib/active_admin/views/components/menu_item.rb +59 -0
  274. data/activeadmin-3.5.1/lib/active_admin/views/components/paginated_collection.rb +164 -0
  275. data/activeadmin-3.5.1/lib/active_admin/views/components/panel.rb +39 -0
  276. data/activeadmin-3.5.1/lib/active_admin/views/components/scopes.rb +75 -0
  277. data/activeadmin-3.5.1/lib/active_admin/views/components/sidebar.rb +14 -0
  278. data/activeadmin-3.5.1/lib/active_admin/views/components/sidebar_section.rb +35 -0
  279. data/activeadmin-3.5.1/lib/active_admin/views/components/site_title.rb +55 -0
  280. data/activeadmin-3.5.1/lib/active_admin/views/components/status_tag.rb +76 -0
  281. data/activeadmin-3.5.1/lib/active_admin/views/components/table_for.rb +211 -0
  282. data/activeadmin-3.5.1/lib/active_admin/views/components/tabs.rb +41 -0
  283. data/activeadmin-3.5.1/lib/active_admin/views/components/unsupported_browser.rb +12 -0
  284. data/activeadmin-3.5.1/lib/active_admin/views/footer.rb +32 -0
  285. data/activeadmin-3.5.1/lib/active_admin/views/header.rb +20 -0
  286. data/activeadmin-3.5.1/lib/active_admin/views/index_as_block.rb +37 -0
  287. data/activeadmin-3.5.1/lib/active_admin/views/index_as_blog.rb +156 -0
  288. data/activeadmin-3.5.1/lib/active_admin/views/index_as_grid.rb +81 -0
  289. data/activeadmin-3.5.1/lib/active_admin/views/index_as_table.rb +401 -0
  290. data/activeadmin-3.5.1/lib/active_admin/views/pages/base.rb +134 -0
  291. data/activeadmin-3.5.1/lib/active_admin/views/pages/form.rb +65 -0
  292. data/activeadmin-3.5.1/lib/active_admin/views/pages/index.rb +166 -0
  293. data/activeadmin-3.5.1/lib/active_admin/views/pages/layout.rb +27 -0
  294. data/activeadmin-3.5.1/lib/active_admin/views/pages/page.rb +31 -0
  295. data/activeadmin-3.5.1/lib/active_admin/views/pages/show.rb +60 -0
  296. data/activeadmin-3.5.1/lib/active_admin/views/tabbed_navigation.rb +12 -0
  297. data/activeadmin-3.5.1/lib/active_admin/views/title_bar.rb +56 -0
  298. data/activeadmin-3.5.1/lib/active_admin/views.rb +9 -0
  299. data/activeadmin-3.5.1/lib/active_admin.rb +135 -0
  300. data/activeadmin-3.5.1/lib/activeadmin.rb +2 -0
  301. data/activeadmin-3.5.1/lib/generators/active_admin/assets/assets_generator.rb +15 -0
  302. data/activeadmin-3.5.1/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  303. data/activeadmin-3.5.1/lib/generators/active_admin/assets/templates/active_admin.scss +17 -0
  304. data/activeadmin-3.5.1/lib/generators/active_admin/devise/devise_generator.rb +69 -0
  305. data/activeadmin-3.5.1/lib/generators/active_admin/install/install_generator.rb +56 -0
  306. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/active_admin.rb.erb +352 -0
  307. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/admin_users.rb.erb +28 -0
  308. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/dashboard.rb +33 -0
  309. data/activeadmin-3.5.1/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +16 -0
  310. data/activeadmin-3.5.1/lib/generators/active_admin/page/USAGE +8 -0
  311. data/activeadmin-3.5.1/lib/generators/active_admin/page/page_generator.rb +13 -0
  312. data/activeadmin-3.5.1/lib/generators/active_admin/page/templates/page.rb +6 -0
  313. data/activeadmin-3.5.1/lib/generators/active_admin/resource/resource_generator.rb +21 -0
  314. data/activeadmin-3.5.1/lib/generators/active_admin/resource/templates/admin.rb.erb +46 -0
  315. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  316. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  317. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  318. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  319. data/activeadmin-3.5.1/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  320. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/data.js +39 -0
  321. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/disable-selection.js +51 -0
  322. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/focusable.js +79 -0
  323. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +81 -0
  324. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/keycode.js +51 -0
  325. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/labels.js +70 -0
  326. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/plugin.js +49 -0
  327. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/position.js +513 -0
  328. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/scroll-parent.js +50 -0
  329. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/tabbable.js +41 -0
  330. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/unique-id.js +54 -0
  331. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/version.js +20 -0
  332. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widget.js +761 -0
  333. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/button.js +454 -0
  334. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +294 -0
  335. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +304 -0
  336. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +2240 -0
  337. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +957 -0
  338. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +1264 -0
  339. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +226 -0
  340. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +1281 -0
  341. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +1614 -0
  342. data/activeadmin-3.5.1/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +918 -0
  343. data/super-sharp-tool.gemspec +12 -0
  344. metadata +383 -0
@@ -0,0 +1,166 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin/helpers/collection"
3
+
4
+ module ActiveAdmin
5
+ module Views
6
+ module Pages
7
+
8
+ class Index < Base
9
+
10
+ def title
11
+ if Proc === config[:title]
12
+ controller.instance_exec &config[:title]
13
+ else
14
+ config[:title] || assigns[:page_title] || active_admin_config.plural_resource_label
15
+ end
16
+ end
17
+
18
+ # Retrieves the given page presenter, or uses the default.
19
+ def config
20
+ active_admin_config.get_page_presenter(:index, params[:as]) ||
21
+ ActiveAdmin::PagePresenter.new(as: :table)
22
+ end
23
+
24
+ # Renders the index configuration that was set in the
25
+ # controller. Defaults to rendering the ActiveAdmin::Pages::Index::Table
26
+ def main_content
27
+ wrap_with_batch_action_form do
28
+ build_table_tools
29
+ build_collection
30
+ end
31
+ end
32
+
33
+ protected
34
+
35
+ def wrap_with_batch_action_form(&block)
36
+ if active_admin_config.batch_actions.any?
37
+ batch_action_form(&block)
38
+ else
39
+ block.call
40
+ end
41
+ end
42
+
43
+ include ::ActiveAdmin::Helpers::Collection
44
+
45
+ def items_in_collection?
46
+ !collection_is_empty?
47
+ end
48
+
49
+ def build_collection
50
+ if items_in_collection?
51
+ render_index
52
+ else
53
+ if params[:q] || params[:scope]
54
+ render_empty_results
55
+ else
56
+ render_blank_slate
57
+ end
58
+ end
59
+ end
60
+
61
+ include ::ActiveAdmin::ViewHelpers::DownloadFormatLinksHelper
62
+
63
+ def build_table_tools
64
+ div class: "table_tools" do
65
+ build_batch_actions_selector
66
+ build_scopes
67
+ build_index_list
68
+ end if any_table_tools?
69
+ end
70
+
71
+ def any_table_tools?
72
+ active_admin_config.batch_actions.any? ||
73
+ active_admin_config.scopes.any? ||
74
+ active_admin_config.page_presenters[:index].try(:size).try(:>, 1)
75
+ end
76
+
77
+ def build_batch_actions_selector
78
+ if active_admin_config.batch_actions.any?
79
+ insert_tag view_factory.batch_action_selector, active_admin_config.batch_actions
80
+ end
81
+ end
82
+
83
+ def build_scopes
84
+ if active_admin_config.scopes.any?
85
+ scope_options = {
86
+ scope_count: config.fetch(:scope_count, true)
87
+ }
88
+
89
+ scopes_renderer active_admin_config.scopes, scope_options
90
+ end
91
+ end
92
+
93
+ def build_index_list
94
+ indexes = active_admin_config.page_presenters[:index]
95
+
96
+ if indexes.kind_of?(Hash) && indexes.length > 1
97
+ index_classes = []
98
+ active_admin_config.page_presenters[:index].each do |type, page_presenter|
99
+ index_classes << find_index_renderer_class(page_presenter[:as])
100
+ end
101
+
102
+ index_list_renderer index_classes
103
+ end
104
+ end
105
+
106
+ # Returns the actual class for renderering the main content on the index
107
+ # page. To set this, use the :as option in the page_presenter block.
108
+ def find_index_renderer_class(klass)
109
+ klass.is_a?(Class) ? klass :
110
+ ::ActiveAdmin::Views.const_get("IndexAs" + klass.to_s.camelcase)
111
+ end
112
+
113
+ def render_blank_slate
114
+ blank_slate_content = I18n.t("active_admin.blank_slate.content", resource_name: active_admin_config.plural_resource_label)
115
+ if controller.action_methods.include?("new") && authorized?(ActiveAdmin::Auth::NEW, active_admin_config.resource_class)
116
+ blank_slate_content = [blank_slate_content, blank_slate_link].compact.join(" ")
117
+ end
118
+ insert_tag(view_factory.blank_slate, blank_slate_content)
119
+ end
120
+
121
+ def render_empty_results
122
+ empty_results_content = I18n.t("active_admin.pagination.empty", model: active_admin_config.plural_resource_label)
123
+ insert_tag(view_factory.blank_slate, empty_results_content)
124
+ end
125
+
126
+ def render_index
127
+ renderer_class = find_index_renderer_class(config[:as])
128
+
129
+ paginator = config.fetch(:paginator, true)
130
+ download_links = config.fetch(:download_links, active_admin_config.namespace.download_links)
131
+ pagination_total = config.fetch(:pagination_total, true)
132
+ per_page = config.fetch(:per_page, active_admin_config.per_page)
133
+
134
+ paginated_collection(
135
+ collection, entry_name: active_admin_config.resource_label,
136
+ entries_name: active_admin_config.plural_resource_label(count: collection_size),
137
+ download_links: download_links,
138
+ paginator: paginator,
139
+ per_page: per_page,
140
+ pagination_total: pagination_total) do
141
+ div class: "index_content" do
142
+ insert_tag(renderer_class, config, collection)
143
+ end
144
+ end
145
+ end
146
+
147
+ private
148
+
149
+ def blank_slate_link
150
+ if config.options.has_key?(:blank_slate_link)
151
+ blank_slate_link = config.options[:blank_slate_link]
152
+ if blank_slate_link.is_a?(Proc)
153
+ instance_exec(&blank_slate_link)
154
+ end
155
+ else
156
+ default_blank_slate_link
157
+ end
158
+ end
159
+
160
+ def default_blank_slate_link
161
+ link_to(I18n.t("active_admin.blank_slate.link"), new_resource_path)
162
+ end
163
+ end
164
+ end
165
+ end
166
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Views
4
+ module Pages
5
+
6
+ # Acts as a standard Rails Layout for use when logged
7
+ # out or when rendering custom actions.
8
+ class Layout < Base
9
+
10
+ def title
11
+ assigns[:page_title] || I18n.t("active_admin.#{params[:action]}", default: params[:action].to_s.titleize)
12
+ end
13
+
14
+ # Render the content_for(:layout) into the main content area
15
+ def main_content
16
+ content_for_layout = content_for(:layout)
17
+ if content_for_layout.is_a?(Arbre::Element)
18
+ current_arbre_element.add_child content_for_layout.children
19
+ else
20
+ text_node content_for_layout
21
+ end
22
+ end
23
+ end
24
+
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Views
4
+ module Pages
5
+ class Page < Base
6
+
7
+ def main_content
8
+ if page_presenter.block
9
+ instance_exec &page_presenter.block
10
+ else
11
+ nil
12
+ end
13
+ end
14
+
15
+ protected
16
+
17
+ def page_presenter
18
+ active_admin_config.get_page_presenter(:index) || ActiveAdmin::PagePresenter.new
19
+ end
20
+
21
+ def title
22
+ if page_presenter[:title]
23
+ render_or_call_method_or_proc_on self, page_presenter[:title]
24
+ else
25
+ active_admin_config.name
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Views
4
+ module Pages
5
+ class Show < Base
6
+
7
+ def config
8
+ active_admin_config.get_page_presenter(:show) || super
9
+ end
10
+
11
+ def title
12
+ if config[:title]
13
+ render_or_call_method_or_proc_on(resource, config[:title])
14
+ else
15
+ assigns[:page_title] || default_title
16
+ end
17
+ end
18
+
19
+ def main_content
20
+ if config.block
21
+ # Eval the show config from the controller
22
+ instance_exec resource, &config.block
23
+ else
24
+ default_main_content
25
+ end
26
+ end
27
+
28
+ def attributes_table(*args, &block)
29
+ opts = args.extract_options!
30
+ table_title = if opts.has_key?(:title)
31
+ render_or_call_method_or_proc_on(resource, opts[:title])
32
+ else
33
+ ActiveAdmin::Localizers.resource(active_admin_config).t(:details)
34
+ end
35
+ panel(table_title) do
36
+ attributes_table_for resource, *args, &block
37
+ end
38
+ end
39
+
40
+ protected
41
+
42
+ def default_title
43
+ display_name(resource)
44
+ end
45
+
46
+ module DefaultMainContent
47
+ def default_main_content(&block)
48
+ attributes_table(*default_attribute_table_rows, &block)
49
+ end
50
+
51
+ def default_attribute_table_rows
52
+ active_admin_config.resource_columns
53
+ end
54
+ end
55
+
56
+ include DefaultMainContent
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+ require_relative "components/menu"
3
+
4
+ module ActiveAdmin
5
+ module Views
6
+ class TabbedNavigation < Menu
7
+ def build(menu, options = {})
8
+ super(menu, options.reverse_merge(id: "tabs"))
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Views
4
+ class TitleBar < Component
5
+
6
+ def build(title, action_items)
7
+ super(id: "title_bar")
8
+ @title = title
9
+ @action_items = action_items
10
+ build_titlebar_left
11
+ build_titlebar_right
12
+ end
13
+
14
+ private
15
+
16
+ def build_titlebar_left
17
+ div id: "titlebar_left" do
18
+ build_breadcrumb
19
+ build_title_tag
20
+ end
21
+ end
22
+
23
+ def build_titlebar_right
24
+ div id: "titlebar_right" do
25
+ build_action_items
26
+ end
27
+ end
28
+
29
+ def build_breadcrumb(separator = "/")
30
+ breadcrumb_config = active_admin_config && active_admin_config.breadcrumb
31
+
32
+ links = if breadcrumb_config.is_a?(Proc)
33
+ instance_exec(controller, &active_admin_config.breadcrumb)
34
+ elsif breadcrumb_config.present?
35
+ breadcrumb_links
36
+ end
37
+ return unless links.present? && links.is_a?(::Array)
38
+ span class: "breadcrumb" do
39
+ links.each do |link|
40
+ text_node link
41
+ span(separator, class: "breadcrumb_sep")
42
+ end
43
+ end
44
+ end
45
+
46
+ def build_title_tag
47
+ h2(@title, id: "page_title")
48
+ end
49
+
50
+ def build_action_items
51
+ insert_tag(view_factory.action_items, @action_items)
52
+ end
53
+
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Views
4
+
5
+ # Loads all the classes in views/*.rb
6
+ Dir[File.expand_path("views", __dir__) + "/**/*.rb"].sort.each { |f| require f }
7
+
8
+ end
9
+ end
@@ -0,0 +1,135 @@
1
+ # frozen_string_literal: true
2
+ require "active_support/core_ext"
3
+ require "set"
4
+
5
+ require "ransack"
6
+ require "kaminari"
7
+ require "formtastic"
8
+ require "formtastic_i18n"
9
+ require "inherited_resources"
10
+ require "jquery-rails"
11
+ require "arbre"
12
+
13
+ require "active_admin/helpers/i18n"
14
+
15
+ module ActiveAdmin
16
+
17
+ autoload :VERSION, "active_admin/version"
18
+ autoload :Application, "active_admin/application"
19
+ autoload :AssetRegistration, "active_admin/asset_registration"
20
+ autoload :Authorization, "active_admin/authorization_adapter"
21
+ autoload :AuthorizationAdapter, "active_admin/authorization_adapter"
22
+ autoload :Callbacks, "active_admin/callbacks"
23
+ autoload :Component, "active_admin/component"
24
+ autoload :BaseController, "active_admin/base_controller"
25
+ autoload :CanCanAdapter, "active_admin/cancan_adapter"
26
+ autoload :ControllerAction, "active_admin/controller_action"
27
+ autoload :CSVBuilder, "active_admin/csv_builder"
28
+ autoload :Dependency, "active_admin/dependency"
29
+ autoload :Devise, "active_admin/devise"
30
+ autoload :DSL, "active_admin/dsl"
31
+ autoload :FormBuilder, "active_admin/form_builder"
32
+ autoload :Inputs, "active_admin/inputs"
33
+ autoload :Localizers, "active_admin/localizers"
34
+ autoload :Menu, "active_admin/menu"
35
+ autoload :MenuCollection, "active_admin/menu_collection"
36
+ autoload :MenuItem, "active_admin/menu_item"
37
+ autoload :Namespace, "active_admin/namespace"
38
+ autoload :OrderClause, "active_admin/order_clause"
39
+ autoload :Page, "active_admin/page"
40
+ autoload :PagePresenter, "active_admin/page_presenter"
41
+ autoload :PageController, "active_admin/page_controller"
42
+ autoload :PageDSL, "active_admin/page_dsl"
43
+ autoload :PunditAdapter, "active_admin/pundit_adapter"
44
+ autoload :Resource, "active_admin/resource"
45
+ autoload :ResourceController, "active_admin/resource_controller"
46
+ autoload :ResourceDSL, "active_admin/resource_dsl"
47
+ autoload :Scope, "active_admin/scope"
48
+ autoload :ScopeChain, "active_admin/helpers/scope_chain"
49
+ autoload :SidebarSection, "active_admin/sidebar_section"
50
+ autoload :TableBuilder, "active_admin/table_builder"
51
+ autoload :ViewFactory, "active_admin/view_factory"
52
+ autoload :ViewHelpers, "active_admin/view_helpers"
53
+ autoload :Views, "active_admin/views"
54
+
55
+ class << self
56
+
57
+ attr_accessor :application
58
+
59
+ def application
60
+ @application ||= ::ActiveAdmin::Application.new
61
+ end
62
+
63
+ def deprecator
64
+ @deprecator ||= ActiveSupport::Deprecation.new("4.0", "active-admin")
65
+ end
66
+
67
+ # Gets called within the initializer
68
+ def setup
69
+ application.setup!
70
+ yield(application)
71
+ application.prepare!
72
+ end
73
+
74
+ delegate :register, to: :application
75
+ delegate :register_page, to: :application
76
+ delegate :unload!, to: :application
77
+ delegate :load!, to: :application
78
+ delegate :routes, to: :application
79
+
80
+ # A callback is triggered each time (before) Active Admin loads the configuration files.
81
+ # In development mode, this will happen whenever the user changes files. In production
82
+ # it only happens on boot.
83
+ #
84
+ # The block takes the current instance of [ActiveAdmin::Application]
85
+ #
86
+ # Example:
87
+ #
88
+ # ActiveAdmin.before_load do |app|
89
+ # # Do some stuff before AA loads
90
+ # end
91
+ #
92
+ # @param [Block] block A block to call each time (before) AA loads resources
93
+ def before_load(&block)
94
+ ActiveSupport::Notifications.subscribe ActiveAdmin::Application::BeforeLoadEvent, &wrap_block_for_active_support_notifications(block)
95
+ end
96
+
97
+ # A callback is triggered each time (after) Active Admin loads the configuration files. This
98
+ # is an opportunity to hook into Resources after they've been loaded.
99
+ #
100
+ # The block takes the current instance of [ActiveAdmin::Application]
101
+ #
102
+ # Example:
103
+ #
104
+ # ActiveAdmin.after_load do |app|
105
+ # app.namespaces.each do |name, namespace|
106
+ # puts "Namespace: #{name} loaded!"
107
+ # end
108
+ # end
109
+ #
110
+ # @param [Block] block A block to call each time (after) AA loads resources
111
+ def after_load(&block)
112
+ ActiveSupport::Notifications.subscribe ActiveAdmin::Application::AfterLoadEvent, &wrap_block_for_active_support_notifications(block)
113
+ end
114
+
115
+ private
116
+
117
+ def wrap_block_for_active_support_notifications block
118
+ proc { |_name, _start, _finish, _id, payload| block.call payload[:active_admin_application] }
119
+ end
120
+
121
+ end
122
+
123
+ end
124
+
125
+ # Require things that don't support autoload
126
+ require "active_admin/engine"
127
+ require "active_admin/error"
128
+
129
+ # Require internal plugins
130
+ require "active_admin/batch_actions"
131
+ require "active_admin/filters"
132
+
133
+ # Require ORM-specific plugins
134
+ require "active_admin/orm/active_record" if defined? ActiveRecord
135
+ require "active_admin/orm/mongoid" if defined? Mongoid
@@ -0,0 +1,2 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin"
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+ module ActiveAdmin
3
+ module Generators
4
+ class AssetsGenerator < Rails::Generators::Base
5
+
6
+ source_root File.expand_path("templates", __dir__)
7
+
8
+ def install_assets
9
+ template "active_admin.js", "app/assets/javascripts/active_admin.js"
10
+ template "active_admin.scss", "app/assets/stylesheets/active_admin.scss"
11
+ end
12
+
13
+ end
14
+ end
15
+ end
@@ -0,0 +1 @@
1
+ //= require active_admin/base
@@ -0,0 +1,17 @@
1
+ // Sass variable overrides must be declared before loading up Active Admin's styles.
2
+ //
3
+ // To view the variables that Active Admin provides, take a look at
4
+ // `app/assets/stylesheets/active_admin/mixins/_variables.scss` in the
5
+ // Active Admin source.
6
+ //
7
+ // For example, to change the sidebar width:
8
+ // $sidebar-width: 242px;
9
+
10
+ // Active Admin's got SASS!
11
+ @import "active_admin/mixins";
12
+ @import "active_admin/base";
13
+
14
+ // Overriding any non-variable Sass must be done after the fact.
15
+ // For example, to change the default status-tag color:
16
+ //
17
+ // .status_tag { background: #6090DB; }
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+ require "active_admin/error"
3
+ require "active_admin/dependency"
4
+
5
+ module ActiveAdmin
6
+ module Generators
7
+ class DeviseGenerator < Rails::Generators::NamedBase
8
+ desc "Creates an admin user and uses Devise for authentication"
9
+ argument :name, type: :string, default: "AdminUser"
10
+
11
+ class_option :registerable, type: :boolean, default: false,
12
+ desc: "Should the generated resource be registerable?"
13
+
14
+ RESERVED_NAMES = [:active_admin_user]
15
+
16
+ class_option :default_user, type: :boolean, default: true,
17
+ desc: "Should a default user be created inside the migration?"
18
+
19
+ def install_devise
20
+ begin
21
+ Dependency.devise! Dependency::Requirements::DEVISE
22
+ rescue DependencyError => e
23
+ raise ActiveAdmin::GeneratorError, "#{e.message} If you don't want to use devise, run the generator with --skip-users."
24
+ end
25
+
26
+ require "devise"
27
+
28
+ initializer_file =
29
+ File.join(destination_root, "config", "initializers", "devise.rb")
30
+
31
+ if File.exist?(initializer_file)
32
+ log :generate, "No need to install devise, already done."
33
+ else
34
+ log :generate, "devise:install"
35
+ invoke "devise:install"
36
+ end
37
+ end
38
+
39
+ def create_admin_user
40
+ if RESERVED_NAMES.include?(name.underscore)
41
+ raise ActiveAdmin::GeneratorError, "The name #{name} is reserved by Active Admin"
42
+ end
43
+ invoke "devise", [name]
44
+ end
45
+
46
+ def remove_registerable_from_model
47
+ unless options[:registerable]
48
+ model_file = File.join(destination_root, "app", "models", "#{file_path}.rb")
49
+ gsub_file model_file, /\:registerable([.]*,)?/, ""
50
+ end
51
+ end
52
+
53
+ def set_namespace_for_path
54
+ routes_file = File.join(destination_root, "config", "routes.rb")
55
+ gsub_file routes_file, /devise_for :#{plural_table_name}$/, "devise_for :#{plural_table_name}, ActiveAdmin::Devise.config"
56
+ end
57
+
58
+ def add_default_user_to_seed
59
+ seeds_paths = Rails.application.paths["db/seeds.rb"]
60
+ seeds_file = seeds_paths.existent.first
61
+ return if seeds_file.nil? || !options[:default_user]
62
+
63
+ create_user_code = "#{class_name}.create!(email: 'admin@example.com', password: 'password', password_confirmation: 'password') if Rails.env.development?"
64
+
65
+ append_to_file seeds_file, create_user_code
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+ require "rails/generators/active_record"
3
+
4
+ module ActiveAdmin
5
+ module Generators
6
+ class InstallGenerator < ActiveRecord::Generators::Base
7
+ desc "Installs Active Admin and generates the necessary migrations"
8
+ argument :name, type: :string, default: "AdminUser"
9
+
10
+ hook_for :users, default: "devise", desc: "Admin user generator to run. Skip with --skip-users"
11
+ class_option :skip_comments, type: :boolean, default: false, desc: "Skip installation of comments"
12
+ class_option :use_webpacker, type: :boolean, default: false, desc: "Use Webpacker assets instead of Sprockets"
13
+
14
+ source_root File.expand_path("templates", __dir__)
15
+
16
+ def copy_initializer
17
+ @underscored_user_name = name.underscore.gsub("/", "_")
18
+ @use_authentication_method = options[:users].present?
19
+ @skip_comments = options[:skip_comments]
20
+ @use_webpacker = options[:use_webpacker]
21
+ template "active_admin.rb.erb", "config/initializers/active_admin.rb"
22
+ end
23
+
24
+ def setup_directory
25
+ empty_directory "app/admin"
26
+ template "dashboard.rb", "app/admin/dashboard.rb"
27
+ if options[:users].present?
28
+ @user_class = name
29
+ template "admin_users.rb.erb", "app/admin/#{name.underscore.pluralize}.rb"
30
+ end
31
+ end
32
+
33
+ def setup_routes
34
+ if options[:users] # Ensure Active Admin routes occur after Devise routes so that Devise has higher priority
35
+ inject_into_file "config/routes.rb", "\n ActiveAdmin.routes(self)", after: /devise_for .*, ActiveAdmin::Devise\.config/
36
+ else
37
+ route "ActiveAdmin.routes(self)"
38
+ end
39
+ end
40
+
41
+ def create_assets
42
+ if options[:use_webpacker]
43
+ generate "active_admin:webpacker"
44
+ else
45
+ generate "active_admin:assets"
46
+ end
47
+ end
48
+
49
+ def create_migrations
50
+ unless options[:skip_comments]
51
+ migration_template "migrations/create_active_admin_comments.rb.erb", "db/migrate/create_active_admin_comments.rb"
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end